验证身份证号码

验证身份证号码

function isIdCardNo(num){  
      if (!isNumber(num))
           return false; 
      var len = num.length;
      var re; 
      if (len == 15)  
          re = new RegExp(/^(d{6})()?(d{2})(d{2})(d{2})(d{3})$/);  
      else if(len == 18)  
          re = new RegExp(/^(d{6})()?(d{4})(d{2})(d{2})(d{3})(d)$/);  
      else
          return  false;  
      var a = num.match(re); 
      if (a != null){  
          if (len==15){  
              var D = new Date("19"+a[3]+"/"+a[4]+"/"+a[5]);  
              var B = D.getYear()==a[3]&&(D.getMonth()+1)==a[4]&&D.getDate()==a[5];  
          }else{  
              var D = new   Date(a[3]+"/"+a[4]+"/"+a[5]);  
              var B = D.getFullYear()==a[3]&&(D.getMonth()+1)==a[4]&&D.getDate()==a[5];  
          }   
          if (!B)return false;  
      }  
  

   return true;  
}

时间: 2024-12-26 10:30:06

验证身份证号码的相关文章

php中如何验证身份证号码

身份证号码的结构 身份证号码是特征组合码,由17位数字本体码和一位校验码组成. 排列顺序从左至右依此为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码. 地址码(前六位数) 表示编码对象常住户口所在县(市.旗.区)的行政区划代码,按GB/T2260的规定执行. 出生日期码(第七位至十四位) 表示编码对象出生的年.月.日,按GB/T7408的规定执行,年.月.日代码之间不用分隔符. 顺序码(第十五位至十七位) 表示在同一地址码所标识的区域范围,对同年.同月.同日出生的人编定的顺

正则表达式验证身份证号码和邮箱、判断checked选中状态

项目中正好写到登录注册,在用blur事件验证用户输入内容的时候,出现了点bug,最后是在注册按钮onclick的事件里获取用户输入值来验证的. 判断checked选中状态: if(!$('#checkedAgree').prop("checked"){ console.log('no');//未选中 }else{ console.log('yes');//选中 } //注册 $(".regBtn").on('click',function(){ var regUse

php验证身份证号码是否正确函数

例子 今天分享一个php验证身份证号码是否正确函数. /********************php验证身份证号码是否正确函数*********************/ function is_idcard( $id ) {     $id = strtoupper($id);     $regx = "/(^\d{15}$)|(^\d{17}([0-9]|X)$)/";     $arr_split = array();     if(!preg_match($regx, $id

JS验证身份证号码

//--身份证号码验证-支持新的带x身份证 function isIdCardNo(num) {     var factorArr = new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1);     var error;     var varArray = new Array();     var intValue;     var lngProduct = 0;     var intCheckDigit;     var intStrLen =

JavaScript正则表达式验证身份证号码是否合法(两种方法)_正则表达式

第一种方法: 在用户注册页面有些需求要求的比较严格,需要对身份证js验证是否合法,通过此功能严格此系统软件,从而过滤到很多水客.下面就此实现方法给大家讲解下. 很多时候我们都是通过一组正则表达式来判断用户输入的身份证是否合法,那在用正则表达式判断之前,你对身份证号的组成有多少了解呢?下面来说说一个身份证号里面包含了多少的信息: 1.号码的结构 公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成.排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码.

如何用javascript正则表达式验证身份证号码是否合法_正则表达式

在用户注册页面有些需求要求的比较严格,需要对身份证验证是否合法,通过此功能严格此系统软件,从而过滤到很多水客.下面就此实现方法给大家讲解下. 很多时候我们都是通过一组正则表达式来判断用户输入的身份证是否合法,那在用正则表达式判断之前,你对身份证号的组成有多少了解呢?下面来说说一个身份证号里面包含了多少的信息: 1.号码的结构 公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成.排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码. 2.地址码(前六

js验证身份证号码真实性实现代码

身份证号分为两种,旧的为15位,新的为18位.身份证15位编码规则:dddddd yymmdd xx p    其中 dddddd:地区码    yymmdd: 出生年月日    xx: 顺序类编码,无法确定    p: 性别,奇数为男,偶数为女: 身份证18位编码规则:dddddd yyyymmdd xxx y    其中 dddddd:地区码    yyyymmdd: 出生年月日     xxx:顺序类编码,无法确定,奇数为男,偶数为女    y: 校验码,该位数值可通过前17位计算获得,计

javascript正则表达式验证身份证号码函数

 代码如下 复制代码 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位(最后一位是数字or字母X)(C#).例:/^(d){15}|(d{17}(d|x|X))$/现在需要验证港澳台及其他国家的身份识别,各位知不知道规则,或者解决办法?? 解决方案 解决方案二:每个国家的规则都不一样的--不具体的话那就只能^[0-1a-zA-Z]{6,}$ 解决方案三:引用楼主nyxuem的回复: 我只知道中国大陆的的身份证是15位或者18位(最后一位是数字or字母X)(C#).例:/^(d){15}|(d{17}(d|x|X