正则表达式

姓名验证--支持少数民族姓名:^([\u4e00-\u9fa5]|\u3007)+([\.\uff0e\u00b7\u30fb]?|\u3007?)+([\u4e00-\u9fa5]|\u3007)+$  
 
  身份证验证正则简易版:^(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})([0-9]|X)$  
 完整方法,严格限制:
Js代码   收藏代码
  1. function isIdCardNo(code) {  
  2.     if($.trim(code) == "") {    //不做空校验  
  3.         return true;  
  4.     }             
  5.     if (/*code.length != 15 && */code.length != 18) {   //支持15或18位长度  
  6.         return false;  
  7.     }             
  8.     // 地区校验   
  9.     var area = {11 :"北京", 12 :"天津", 13 :"河北", 14 :"山西", 15 :"内蒙古", 21 :"辽宁",  
  10.         22 :"吉林", 23 :"黑龙江", 31 :"上海", 32 :"江苏", 33 :"浙江", 34 :"安徽",  
  11.         35 :"福建", 36 :"江西", 37 :"山东", 41 :"河南", 42 :"湖北", 43 :"湖南",  
  12.         44 :"广东", 45 :"广西", 46 :"海南", 50 :"重庆", 51 :"四川", 52 :"贵州",  
  13.         53 :"云南", 54 :"西藏", 61 :"陕西", 62 :"甘肃", 63 :"青海", 64 :"宁夏",  
  14.         65 :"新疆", 71 :"台湾", 81 :"香港", 82 :"澳门", 91 :"国外"}             
  15.     if (area[parseInt(code.substr(0, 2))] == undefined) {  
  16.         return false;  
  17.     }  
  18.       
  19.     switch (code.length) {  // 身份号码位数及格式校验  
  20.         case 18:  
  21.             if (!/^[0-9]{17}([0-9X])$/.test(code)) {    //基本格式校验  
  22.                 return false;  
  23.             }  
  24.             //生日校验  
  25.             var strBirthday = code.substr(6, 4) + "/" + Number(code.substr(10, 2)) + "/" + Number(code.substr(12, 2));  
  26.             var dateBirthday = new Date(strBirthday);  
  27.             var flag = (strBirthday == (dateBirthday.getFullYear() + "/" + (dateBirthday.getMonth() + 1) + "/" + dateBirthday.getDate()));  
  28.             if(flag == false) {  
  29.                 return false;  
  30.             }                     
  31.             //校验位校验  
  32.             var idcardArr = code.split("");  
  33.             var index = ((parseInt(idcardArr[0]) + parseInt(idcardArr[10])) * 7 +   
  34.                 (parseInt(idcardArr[1]) + parseInt(idcardArr[11])) * 9 +  
  35.                 (parseInt(idcardArr[2]) + parseInt(idcardArr[12])) * 10 +   
  36.                 (parseInt(idcardArr[3]) + parseInt(idcardArr[13])) * 5 +   
  37.                 (parseInt(idcardArr[4]) + parseInt(idcardArr[14])) * 8 +   
  38.                 (parseInt(idcardArr[5]) + parseInt(idcardArr[15])) * 4 +   
  39.                 (parseInt(idcardArr[6]) + parseInt(idcardArr[16])) * 2 +   
  40.                  parseInt(idcardArr[7]) * 1 +   
  41.                  parseInt(idcardArr[8]) * 6 +  
  42.                  parseInt(idcardArr[9]) * 3) % 11;  
  43.             return "10X98765432".substr(index, 1) == idcardArr[17];  
  44.             break;  
  45.         default:  
  46.             return false;  
  47.             break;  
  48.     }  
  49.     return true;  
  50. }  

 

国内手机号验证:^1[3|4|5|8]\d{9}$

 

Js代码   收藏代码
  1. var phoneReg=/^1[3|4|5|8]\d{9}$/;  
  2. if (!phoneReg.test(value)) {  
  3.     return false;  
  4. }  

   

 

国内银行卡号校验:^\d{16}|\d{19}$

 

6位数字校验:^\d{6}$

 

 

 

 

 推荐一个在线正则测试网址:http://tool.oschina.net/regex#  更多参考:10 Java Regular Expression Examples You Should Know 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值