我有以下正则表达式验证卡号
[\d+]{6,6}[X|x]{8,8}[\d+]{4,4}
我想验证以下有效卡号
123456XXXXxxxx1234
但是任何额外的东西都不应该匹配。
123456XXXXxxxx1234a
bbb123456XXXXxxxx1234nnn
这就是不应该匹配的。
我试过这个正则表达式,但它对我不起作用。
^[\d+]{6,6}[X|x]{8,8}[\d+]{4,4}$
答案 0 :(得分:3)
您的[\d+]{4,4}
匹配4位数或+
个符号。我想你的意思是\d{4}
(4位)。此外,[X|x]{8,8}
匹配8 X
,x
或|
符号。我想你只需要[Xx]{8}
。
我相信你需要
^\d{6}[Xx]{8}\d{4}$
请参阅regex demo
如果您有时间,可能需要详细了解Character Classes or Character Sets。