身份证正则
来源:4-8 编程练习
JJJustin
2019-07-25 10:48:58
验证身份证号,要求15位或者18位的数字,18位时最后一位可能是x
var pattern = /^\d+(x?)${15,18}/i;
这样对吗
2回答
同学你好,
现在15位的身份证很少了,大部分都是18位的了,如果同学要考虑兼容15位的身份证号,可以参考下面的写法, 十五位身份证都是数字, 然后使用|符号表示或的情况
[]确实表示匹配中括号范围内的一个字符。 [0-9x]的范围就是0-9和x,简单理解就是18位身份证的最后一位是数字的时候就匹配数字,是字母x的时候就会匹配字母x哦。
(1)最后一个是x的情况
效果图:
(2)最后一个是数字
效果图:
(3)15位的身份证号
效果图:
(4)不满足条件的话, 就不匹配不到哦
效果图:
同学可以结合示例代码,自己下去测试一下哦,然后结合代码实现的效果去帮助自己理解
如果帮助到了你, 欢迎采纳!
祝学习愉快~~~~
好帮手慕慕子
2019-07-25
同学你好, 你这样写不对哦, 首先,$符号应该放在量词(也就是表示匹配多少位)后面。然后, \d+表示匹配至少一个数字,导致最终结果可以匹配任意数字哦。
建议: 参考下面的正则表达式理解
如果帮助到了你,欢迎采纳!
祝学习愉快~~~~
相似问题
回答 2
回答 1