电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

js 常用的正則表達式大全

瀏覽:128日期:2024-05-24 09:37:17

以下收錄一些我經常用到的正則表達式,因為工作場景中用到正則的地方幾乎都跟validate插件的驗證有關系,

所以以下正則也是$.validator.addMethod() 的拓展:

validate: http://jqueryvalidation.org/

電話驗證

/** * 手機 * */$.validator.addMethod('isMobile', function (value, element) { var reg = /^((1[3-8][0-9])+d{8})$/; return this.optional(element) || (reg.test(value));}, '手機格式不正確');/** * 號碼,固話與手機都可以 * */jQuery.validator.addMethod('allPhone', function(v, e) {return this.optional(e) || /^(([0+]d{2,3}-)?(0d{2,3})-)?(d{7,8})(-(d{3,}))?$/.test(v)||/^(1(([35][0-9])|(47)|[8][01236789]))d{8}$/.test(v);}, '請輸入正確的號碼:區號-電話號碼/手機號');/** * 固話、傳真,傳真格式與固話是一樣的 * */jQuery.validator.addMethod('isTel', function(v, e) { return this.optional(e) || /^(([0+]d{2,3}-)?(0d{2,3})-)?(d{7,8})(-(d{3,}))?$/.test(v);}, '請輸入正確的電話號碼');/** * 手機 * */$.validator.addMethod('isMobile', function (value, element) { var reg = /^((1[3-8][0-9])+d{8})$/; return this.optional(element) || (reg.test(value));}, '手機格式不正確');/** * 號碼,固話與手機都可以 * */jQuery.validator.addMethod('allPhone', function(v, e) {return this.optional(e) || /^(([0+]d{2,3}-)?(0d{2,3})-)?(d{7,8})(-(d{3,}))?$/.test(v)||/^(1(([35][0-9])|(47)|[8][01236789]))d{8}$/.test(v);}, '請輸入正確的號碼:區號-電話號碼/手機號');/** * 固話、傳真,傳真格式與固話是一樣的 * */jQuery.validator.addMethod('isTel', function(v, e) { return this.optional(e) || /^(([0+]d{2,3}-)?(0d{2,3})-)?(d{7,8})(-(d{3,}))?$/.test(v);}, '請輸入正確的電話號碼');數字驗證

/** * 正整數 * */$.validator.addMethod('ispositivenum', function (value, element) { var reg = /^([0]|[1-9]d*)$/; return this.optional(element) || (reg.test(value));}, '請輸入正整數');/** * 正數(包括浮點數) * */$.validator.addMethod('pFloatTwo', function (value, element) { return this.optional(element) || (/^([1-9]d*|[0])(.d{1,2})?$/.test(value));}, '請輸入正數,最多保留兩位小數');/** * 價格(包括浮點數)最大值99999.99 * */$.validator.addMethod('price', function (value, element) { return this.optional(element) || (value>0&&(/^([1-9]d{0,4}|[0])(.d{1,2})?$/.test(value)));}, '請輸入正數,最大值99999.99,最多保留兩位小數');/** * 規格 * */$.validator.addMethod('size', function (value, element) { var reg = /^[1-9]d{0,4}$/; return this.optional(element) || (reg.test(value));}, '請輸入正整數,最大值99999');/** * 數量 * */$.validator.addMethod('qty', function (value, element) { return this.optional(element) || (value>0 && (/^([1-9]d{0,4}|[0])(.d{1,3})?$/.test(value)));}, '請輸入正數,最大值99999.999,最多保留三位小數');/** * 正整數 * */$.validator.addMethod('ispositivenum', function (value, element) { var reg = /^([0]|[1-9]d*)$/; return this.optional(element) || (reg.test(value));}, '請輸入正整數');/** * 正數(包括浮點數) * */$.validator.addMethod('pFloatTwo', function (value, element) { return this.optional(element) || (/^([1-9]d*|[0])(.d{1,2})?$/.test(value));}, '請輸入正數,最多保留兩位小數');/** * 價格(包括浮點數)最大值99999.99 * */$.validator.addMethod('price', function (value, element) { return this.optional(element) || (value>0&&(/^([1-9]d{0,4}|[0])(.d{1,2})?$/.test(value)));}, '請輸入正數,最大值99999.99,最多保留兩位小數');/** * 規格 * */$.validator.addMethod('size', function (value, element) { var reg = /^[1-9]d{0,4}$/; return this.optional(element) || (reg.test(value));}, '請輸入正整數,最大值99999');/** * 數量 * */$.validator.addMethod('qty', function (value, element) { return this.optional(element) || (value>0 && (/^([1-9]d{0,4}|[0])(.d{1,3})?$/.test(value)));}, '請輸入正數,最大值99999.999,最多保留三位小數');車牌號碼驗證

/** * 車牌號碼驗證 * */$.validator.addMethod('isCarNo', function(value, element){ var reg = /^[u4e00-u9fa5]{1}[a-zA-Z]{1}[a-zA-Z_0-9]{4}[a-zA-Z_0-9_u4e00-u9fa5]$|^[a-zA-Z]{2}d{7}$ /; return this.optional(element) || (reg.test(value));},'請輸入正確的車牌號碼,大小寫不區分');/** * 車牌號碼驗證 * */$.validator.addMethod('isCarNo', function(value, element){ var reg = /^[u4e00-u9fa5]{1}[a-zA-Z]{1}[a-zA-Z_0-9]{4}[a-zA-Z_0-9_u4e00-u9fa5]$|^[a-zA-Z]{2}d{7}$ /; return this.optional(element) || (reg.test(value));},'請輸入正確的車牌號碼,大小寫不區分');身份證號驗證包括15位18位身份證驗證

//身份證15位轉18位中,計算校驗位即最后一位function GetVerifyBit(id){ var result; var nNum=eval(id.charAt(0)*7+id.charAt(1)*9+id.charAt(2)*10+id.charAt(3)*5+id.charAt(4)*8+id.charAt(5)*4+id.charAt(6)*2+id.charAt(7)*1+id.charAt(8)*6+id.charAt(9)*3+id.charAt(10)*7+id.charAt(11)*9+id.charAt(12)*10+id.charAt(13)*5+id.charAt(14)*8+id.charAt(15)*4+id.charAt(16)*2); nNum=nNum%11; switch (nNum) {case 0 : result='1'; break;case 1 : result='0'; break;case 2 : result='X'; break;case 3 : result='9'; break;case 4 : result='8'; break;case 5 : result='7'; break;case 6 : result='6'; break;case 7 : result='5'; break;case 8 : result='4'; break;case 9 : result='3'; break;case 10 : result='2'; break; } //document.write(result); return result;}/* 功能:驗證身份證號碼是否有效 提 示信息:未輸入或輸入身份證號不正確! 使用:validateIdCard(obj,birthday,s)//s:1為男,0為女 返回:0,1,2,3,4,5 */function validateIdCard(obj,birthday,s){ var aCity={11:'北京',12:'天津',13:'河北',14:'山西',15:'內蒙古',21:'遼寧',22:'吉林',23:'黑龍 江',31:'上海',32:'江蘇',33:'浙江',34:'安徽',35:'福建',36:'江西',37:'山東',41:'河南',42:'湖 北',43:'湖南',44:'廣東',45:'廣西',46:'海南',50:'重慶',51:'四川',52:'貴州',53:'云南',54:'西 藏',61:'陜西',62:'甘肅',63:'青海',64:'寧夏',65:'新疆',71:'臺灣',81:'香港',82:'澳門',91:'國 外'}; var iSum = 0; //var info = ''; var strIDno = obj; if(birthday!=null){birthday = birthday.replace(/-/g,'/'); } var idCardLength = strIDno.length; if(!/^d{17}(d|x)$/i.test(strIDno)&&!/^d{15}$/i.test(strIDno)){return 1; //非法身份證號 } if(aCity[parseInt(strIDno.substr(0,2))]==null){return 2;// 非法地區 } // 15位身份證轉換為18位 if (idCardLength==15){sBirthday = '19' + strIDno.substr(6,2) + '-' + Number(strIDno.substr(8,2)) + '-' + Number(strIDno.substr(10,2));var d = new Date(sBirthday.replace(/-/g,'/'));var dd = d.getFullYear().toString() + '-' + (d.getMonth()+1) + '-' + d.getDate();var genderNo=strIDno.substr(14,1);if(sBirthday != dd){ return 3; //非法生日}if(birthday==''){ return 4;//您還沒填寫出生日期}if(birthday!=null && d.getTime()!=new Date(birthday).getTime()){ return 5; //與出生日期不符}if(s!=null && s!=0 && s!=1){ return 6;//您還沒填寫性別}if(s!=null && genderNo%2!=s){ return 7;//與性別不符}strIDno=strIDno.substring(0,6)+'19'+strIDno.substring(6,15);strIDno=strIDno+GetVerifyBit(strIDno); } // 判斷是否大于2078年,小于1900年 var year =strIDno.substring(6,10); if (year<1900 || year>2078 ){return 3;//非法生日 } /*if(){ }*/ //18位身份證處理 //在后面的運算中x相當于數字10,所以轉換成a strIDno = strIDno.replace(/x$/i,'a'); sBirthday=strIDno.substr(6,4)+'-'+Number(strIDno.substr(10,2))+'-'+Number(strIDno.substr(12,2)); var d = new Date(sBirthday.replace(/-/g,'/')); var genderNo=strIDno.substr(16,1); if(sBirthday!=(d.getFullYear()+'-'+ (d.getMonth()+1) + '-' + d.getDate())){return 3; //非法生日 } if(birthday==''){return 4;//您還沒填寫出生日期 } if(birthday!=null && d.getTime()!=new Date(birthday).getTime()){return 5; //與出生日期不符 } if(s!=null && s!=0 && s!=1){return 6;//您還沒填寫性別 } if(s!=null && genderNo%2!=s){return 7;//與性別不符 } // 身份證編碼規范驗證 for(var i = 17;i>=0;i --){iSum += (Math.pow(2,i) % 11) * parseInt(strIDno.charAt(17 - i),11); } if(iSum%11!=1){return 1;// 非法身份證號 } // 判斷是否屏蔽身份證 var words = new Array(); words = new Array('11111119111111111','12121219121212121'); for(var k=0;k<words.length;k++){if (strIDno.indexOf(words[k])!=-1){ return 1;} } return 0;}//身份證(無關聯驗證)$.validator.addMethod('cretID', function(value, element, param){ var n=validateIdCard(value); var error=['','非法身份證號','地區編號不合法','出生日期不合法']; param[1]=error[n]; return this.optional(element) || n==0;},$.validator.format('{1}'));//身份證15位轉18位中,計算校驗位即最后一位function GetVerifyBit(id){ var result; var nNum=eval(id.charAt(0)*7+id.charAt(1)*9+id.charAt(2)*10+id.charAt(3)*5+id.charAt(4)*8+id.charAt(5)*4+id.charAt(6)*2+id.charAt(7)*1+id.charAt(8)*6+id.charAt(9)*3+id.charAt(10)*7+id.charAt(11)*9+id.charAt(12)*10+id.charAt(13)*5+id.charAt(14)*8+id.charAt(15)*4+id.charAt(16)*2); nNum=nNum%11; switch (nNum) {case 0 : result='1'; break;case 1 : result='0'; break;case 2 : result='X'; break;case 3 : result='9'; break;case 4 : result='8'; break;case 5 : result='7'; break;case 6 : result='6'; break;case 7 : result='5'; break;case 8 : result='4'; break;case 9 : result='3'; break;case 10 : result='2'; break; } //document.write(result); return result;}/* 功能:驗證身份證號碼是否有效 提 示信息:未輸入或輸入身份證號不正確! 使用:validateIdCard(obj,birthday,s)//s:1為男,0為女 返回:0,1,2,3,4,5 */function validateIdCard(obj,birthday,s){ var aCity={11:'北京',12:'天津',13:'河北',14:'山西',15:'內蒙古',21:'遼寧',22:'吉林',23:'黑龍 江',31:'上海',32:'江蘇',33:'浙江',34:'安徽',35:'福建',36:'江西',37:'山東',41:'河南',42:'湖 北',43:'湖南',44:'廣東',45:'廣西',46:'海南',50:'重慶',51:'四川',52:'貴州',53:'云南',54:'西 藏',61:'陜西',62:'甘肅',63:'青海',64:'寧夏',65:'新疆',71:'臺灣',81:'香港',82:'澳門',91:'國 外'}; var iSum = 0; //var info = ''; var strIDno = obj; if(birthday!=null){birthday = birthday.replace(/-/g,'/'); } var idCardLength = strIDno.length; if(!/^d{17}(d|x)$/i.test(strIDno)&&!/^d{15}$/i.test(strIDno)){return 1; //非法身份證號 } if(aCity[parseInt(strIDno.substr(0,2))]==null){return 2;// 非法地區 } // 15位身份證轉換為18位 if (idCardLength==15){sBirthday = '19' + strIDno.substr(6,2) + '-' + Number(strIDno.substr(8,2)) + '-' + Number(strIDno.substr(10,2));var d = new Date(sBirthday.replace(/-/g,'/'));var dd = d.getFullYear().toString() + '-' + (d.getMonth()+1) + '-' + d.getDate();var genderNo=strIDno.substr(14,1);if(sBirthday != dd){ return 3; //非法生日}if(birthday==''){ return 4;//您還沒填寫出生日期}if(birthday!=null && d.getTime()!=new Date(birthday).getTime()){ return 5; //與出生日期不符}if(s!=null && s!=0 && s!=1){ return 6;//您還沒填寫性別}if(s!=null && genderNo%2!=s){ return 7;//與性別不符}strIDno=strIDno.substring(0,6)+'19'+strIDno.substring(6,15);strIDno=strIDno+GetVerifyBit(strIDno); } // 判斷是否大于2078年,小于1900年 var year =strIDno.substring(6,10); if (year<1900 || year>2078 ){return 3;//非法生日 } /*if(){ }*/ //18位身份證處理 //在后面的運算中x相當于數字10,所以轉換成a strIDno = strIDno.replace(/x$/i,'a'); sBirthday=strIDno.substr(6,4)+'-'+Number(strIDno.substr(10,2))+'-'+Number(strIDno.substr(12,2)); var d = new Date(sBirthday.replace(/-/g,'/')); var genderNo=strIDno.substr(16,1); if(sBirthday!=(d.getFullYear()+'-'+ (d.getMonth()+1) + '-' + d.getDate())){return 3; //非法生日 } if(birthday==''){return 4;//您還沒填寫出生日期 } if(birthday!=null && d.getTime()!=new Date(birthday).getTime()){return 5; //與出生日期不符 } if(s!=null && s!=0 && s!=1){return 6;//您還沒填寫性別 } if(s!=null && genderNo%2!=s){return 7;//與性別不符 } // 身份證編碼規范驗證 for(var i = 17;i>=0;i --){iSum += (Math.pow(2,i) % 11) * parseInt(strIDno.charAt(17 - i),11); } if(iSum%11!=1){return 1;// 非法身份證號 } // 判斷是否屏蔽身份證 var words = new Array(); words = new Array('11111119111111111','12121219121212121'); for(var k=0;k<words.length;k++){if (strIDno.indexOf(words[k])!=-1){ return 1;} } return 0;}//身份證(無關聯驗證)$.validator.addMethod('cretID', function(value, element, param){ var n=validateIdCard(value); var error=['','非法身份證號','地區編號不合法','出生日期不合法']; param[1]=error[n]; return this.optional(element) || n==0;},$.validator.format('{1}'));

來自:http://www.cnblogs.com/libin-1/p/5917417.html

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 电动百叶窗,开窗器,电动遮阳百叶,电动开窗机生产厂家-徐州鑫友工控科技发展有限公司 | 超声波清洗机_超声波清洗机设备_超声波清洗机厂家_鼎泰恒胜 | 智慧钢琴-电钢琴-便携钢琴-数码钢琴-深圳市特伦斯乐器有限公司 | 真空粉体取样阀,电动楔式闸阀,电动针型阀-耐苛尔(上海)自动化仪表有限公司 | 自清洗过滤器-全自动自清洗过反冲洗过滤器 - 中乂(北京)科技有限公司 | 挤出机_橡胶挤出机_塑料挤出机_胶片冷却机-河北伟源橡塑设备有限公司 | 硬齿面减速机_厂家-山东安吉富传动设备股份有限公司 | 上海深蓝_缠绕机_缠膜机-上海深蓝机械装备有限公司 | 检验科改造施工_DSA手术室净化_导管室装修_成都特殊科室建设厂家_医疗净化工程公司_四川华锐 | 透平油真空滤油机-变压器油板框滤油机-滤油车-华之源过滤设备 | 国际线缆连接网 - 连接器_线缆线束加工行业门户网站 | 螺旋绞龙叶片,螺旋输送机厂家,山东螺旋输送机-淄博长江机械制造有限公司 | ★济南领跃标识制作公司★济南标识制作,标牌制作,山东标识制作,济南标牌厂 | 山东活动策划|济南活动公司|济南公关活动策划-济南锐嘉广告有限公司 | 河南砖机首页-全自动液压免烧砖机,小型砌块水泥砖机厂家[十年老厂] | 模具钢_高速钢_不锈钢-万利钢金属材料| 蒸压釜-陶粒板隔墙板蒸压釜-山东鑫泰鑫智能装备有限公司 | 物联网卡_物联网卡购买平台_移动物联网卡办理_移动联通电信流量卡通信模组采购平台? | KBX-220倾斜开关|KBW-220P/L跑偏开关|拉绳开关|DHJY-I隔爆打滑开关|溜槽堵塞开关|欠速开关|声光报警器-山东卓信有限公司 | 制冷采购电子商务平台——制冷大市场 | 深圳宣传片制作-企业宣传视频制作-产品视频拍摄-产品动画制作-短视频拍摄制作公司 | 翰香原枣子坊加盟费多少钱-正宗枣核糕配方培训利润高飘香 | 特种电缆厂家-硅橡胶耐高温电缆-耐低温补偿导线-安徽万邦特种电缆有限公司 | 苏州教学设备-化工教学设备-环境工程教学模型|同科教仪 | 深圳律师咨询_深圳律师事务所_华荣【免费在线法律咨询】网 | 西安微信朋友圈广告投放_微信朋友圈推广_西安度娘网络科技有限公司 | EFM 022静电场测试仪-套帽式风量计-静电平板监测器-上海民仪电子有限公司 | 济南货架定做_仓储货架生产厂_重型货架厂_仓库货架批发_济南启力仓储设备有限公司 | 便携式XPDM露点仪-在线式防爆露点仪-增强型烟气分析仪-约克仪器 冰雕-冰雪世界-大型冰雕展制作公司-赛北冰雕官网 | 采暖炉_取暖炉_生物质颗粒锅炉_颗粒壁炉_厂家加盟批发_烟台蓝澳采暖设备有限公司 | 合肥办公室装修 - 合肥工装公司 - 天思装饰 | 消泡剂-水处理消泡剂-涂料消泡剂-切削液消泡剂价格-东莞德丰消泡剂厂家 | 震动筛选机|震动分筛机|筛粉机|振筛机|振荡筛-振动筛分设备专业生产厂家高服机械 | 砂尘试验箱_淋雨试验房_冰水冲击试验箱_IPX9K淋雨试验箱_广州岳信试验设备有限公司 | 气动隔膜泵厂家-温州永嘉定远泵阀有限公司 | 旗帜网络笔记-免费领取《旗帜网络笔记》电子书 | 影像测量仪_三坐标测量机_一键式二次元_全自动影像测量仪-广东妙机精密科技股份有限公司 | 东莞ERP软件_广州云ERP_中山ERP_台湾工厂erp系统-广东顺景软件科技有限公司 | 耐磨焊丝,堆焊焊丝,耐磨药芯焊丝,碳化钨焊丝-北京耐默公司 | 玻璃钢格栅盖板|玻璃钢盖板|玻璃钢格栅板|树篦子-长沙川皖玻璃钢制品有限公司 | 双菱电缆-广州电缆厂_广州电缆厂有限公司 |