我有这个正则表达式来验证Visa和万事达卡的空格,它非常完美。
^(?:4\d{3}|5[1-5]\d{2}|6011|3[47]\d{2})([- ]?)\d{4}\1\d{4}\1\d{4}$
签证
4111111111111111 = true
4111 1111 1111 1111 = true
主
5500000000000004 = true
5500 0000 0000 0004 = true
美国运通
340000000000009 = false
3400 0000 0000 009 = false
我需要将Amex添加到正则表达式,我需要最后两个真的,有人可以帮我吗? 谢谢!
答案 0 :(得分:4)
(假设4111111111111111 = false
是拼写错误)
您可以使用以下正则表达式:
^(?:4\d{3}|5[1-5]\d{2}|6011|3[47]\d{2})([-\s]?)\d{4}\1\d{4}\1\d{3,4}$
请参阅demo
答案 1 :(得分:2)