15/18位身份证号码验证的正则表达式总结(详细版)

发布时间:2019-08-06 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了15/18位身份证号码验证的正则表达式总结(详细版)脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

前言

开发过程中,常常需要对一些输入信息进行有效性验证,使用正则表达式进行校验是最简单、效率最高的方式了,下面就来看看15/18位身份证号码验证的正则表达式吧。

介绍

xxxxxx yyyy MM dd 375 0     十八位

xxxxxx    yy MM dd   75 0     十五位

地区: [1-9]/d{5}

年的前两位: (18|19|([23]/d))            1800-2399

年的后两位: /d{2}

月份: ((0[1-9])|(10|11|12))

天数: (([0-2][1-9])|10|20|30|31)          闰年不能禁止29+

三位顺序码: /d{3}

两位顺序码: /d{2}

校验码: [0-9Xx]

正则表达式

十八位: ^[1-9]/d{5}(18|19|([23]/d))/d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)/d{3}[0-9Xx]$

十五位: ^[1-9]/d{5}/d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)/d{2}$

总:

( ^[1-9]/d{5}(18|19|([23]/d))/d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)/d{3}[0-9Xx]$)|(^[1-9]/d{5}/d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)/d{2}$)

简单的JS验证示例

 function isCardNo(card)  {  // 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X  VAR reg = /(^/d{15}$)|(^/d{18}$)|(^/d{17}(/d|X|x)$)/;  if(reg.test(card) === false)  {  alert("身份证输入不合法");  return false;  }  } 

总结

脚本宝典总结

以上是脚本宝典为你收集整理的15/18位身份证号码验证的正则表达式总结(详细版)全部内容,希望文章能够帮你解决15/18位身份证号码验证的正则表达式总结(详细版)所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:div