正则表达式-------匹配身份证号码

身份证为15位或者18位,15位的全为数字,18位的前17位为数字,最后一位为数字或者大写字母”X“。

与之匹配的正则表达式:

(^\d{15}$)|(^\d{17}([0-9]|X)$)

 



下面以Javascript为例进行说明:

function isIdCardNo(num)
{ 
   num = num.toUpperCase(); 
      //身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X。 
   if (!(/(^\d{15}$)|(^\d{17}([0-9]|X)$)/.test(num))) 
   {
      alert('输入的身份证号长度不对,或者号码不符合规定!\n15位号码应全为数字,18位号码末位可以为数字或X。');
      return false;
   } 

 

 

工具类可以参考:身份证工具类,可以解析出身份证号是否通过校验、性别、年龄和出生所在地

 

你可能感兴趣的:(正则表达式-------匹配身份证号码)