0

ほとんどのクレジット カードの正規表現では、mastercard は 5 で始まり、2 桁目が 1 ~ 5 になりますが、これはシアーズのもので、最初の 4 桁が 5049 です。他の非規則が使用されているかどうかを知らずに正規表現を変更したくありません。それを変更するのがかなり安全かどうか、または他の変更も行う必要があるかどうか、誰かが知っていますか?

前もって感謝します!

4

1 に答える 1

4

あなたの正規表現に欠陥があり ます:-) [編集:あなたの質問の前提であるシアーズカードをサポートしたい場合]

ウィキペディアには発行者番号の正確なリストがあります。

http://en.wikipedia.org/wiki/List_of_Issuer_Identification_Numbers

シアーズの5049が含まれています。

リストされている発行者番号ごとに1つ以上の単体テストを作成し、それらの単体テストでRegExを検証することをお勧めします。

アップデート

「50」で始まる広く受け入れられているクレジットカードはたくさんあるので、2桁目が1〜5の範囲にあると主張する場合、正規表現はまだ障害があります。

例(Wikiリンクから):

500235 National Bank of Canada
500766 Bank of Montreal

公益受給者(福祉受給者など)への販売が許可されているものを販売している場合は、EBTカードも使用します。

507683 Missouri EBT Card
于 2012-11-12T20:11:20.997 に答える