JS正则表达式验证身份证号码

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

 最近的项目中用的需要调用实名认证的接口,实名认证接口价格相比短信而言高了不是几分钱,所以说调用实名认证的条件就要严格把关,因此用到js验证真实姓名与js验证身份证号。

进入正题

  js验证真实姓名,是用的unicode字符的来进行匹配,而中国人的姓名长度一般都是2-4,所以重复匹配{2,4}次

1.js验证真实姓名

 
  1. var regName =/^[\u4e00-\u9fa5]{2,4}$/;  
  2. if(!regName.test(name)){  
  3.     alert('真实姓名填写有误');  
  4.      return false;  
  5.  }  

js验证身份证号,中国的身份证号,一代身份证号是15位的数字,二代身份证都是18位的,最后一位校验位除了可能是数字还可能是'X'或'x',所以有四种可能性:a.15位数字 b.18位数字 c.17位数字,第十八位是'X' d.17位数字,第十八位是'x'

2.js验证身份证号

 
  1. var regIdNo = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;  
  2. if(!regIdNo.test(idNo)){  
  3.     alert('身份证号填写有误');  
  4.     return false;  
  5. }  

posted on 2017-06-23 05:28  防空洞123  阅读(73696)  评论(1编辑  收藏  举报

导航