使用jQuery Bootstrapvalidator并尝试为金融应用程序添加4位数针的额外验证.
所以我已经确定用户的输入有4位数字并且是数字.
/^\d{4}$/
Run Code Online (Sandbox Code Playgroud)
现在我正在尝试进行以下额外的正则表达式验证并且卡住了.任何帮助,将不胜感激.
确保4位数字不完全相同(即1111或9999)
不顺序(即1234,6789)
不是出生年份.为简化起见,我只是排除任何以19或20开头的数字(即1986年,2004年).
在此先感谢您的帮助.
您的第一个和第三个约束很容易转换为正则表达式:
^(?!(.)\1{3})(?!19|20)\d{4}$
Run Code Online (Sandbox Code Playgroud)
在这里,我使用了两个负向前瞻,每个约束一个.
然而,尽管可能,非顺序约束对于正则表达式来说是不合理的卷积.
在这里,你决定是否值得痛苦:
^(?!(.)\1{3})(?!19|20)(?!0123|1234|2345|3456|4567|5678|6789|7890|0987|9876|8765|7654|6543|5432|4321|3210)\d{4}$
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3218 次 |
| 最近记录: |