本篇內(nèi)容主要講解“JS正則表達(dá)式整合”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“JS正則表達(dá)式整合”吧!
成都創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括銅陵網(wǎng)站建設(shè)、銅陵網(wǎng)站制作、銅陵網(wǎng)頁(yè)制作以及銅陵網(wǎng)絡(luò)營(yíng)銷(xiāo)策劃等。多年來(lái),我們專(zhuān)注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,銅陵網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到銅陵省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
url的正則表達(dá)式:包括IP,域名(domain),ftp,二級(jí)域名,域名中的文件,域名加上端口!用戶名等等信息
function IsURL(str_url) { var strRegex = "^((https|http|ftp|rtsp|mms)?://)" + "?(([0-9a-z_!~*'().&=+$%-]+: )?[0-9a-z_!~*'().&=+$%-]+@)?" + //ftp的user@ "(([0-9]{1,3}.){3}[0-9]{1,3}" + // IP形式的URL- 199.194.52.184 "|" + // 允許IP和DOMAIN(域名) "([0-9a-z_!~*'()-]+.)*" + // 域名- www. "([0-9a-z][0-9a-z-]{0,61})?[0-9a-z]." + // 二級(jí)域名 "[a-z]{2,6})" + // first level domain- .com or .museum "(:[0-9]{1,4})?" + // 端口- :80 "((/?)|" + // a slash isn't required if there is no file name "(/[0-9a-z_!~*'().;?:@&=+$,%#-]+)+/?)$"; var re = new RegExp(strRegex); //re.test() if (re.test(str_url)) { return true; } else { return false; } }
匹配手機(jī)號(hào)
var myreg = /^(13[0-9]{1}|14[5|7|9]{1}|15[0-3|5-9]{1}|166|17[0-3|5-8]{1}|18[0-9]{1}|19[8-9]{1}){1}\d{8}$/;
用戶名正則,4到16位(字母,數(shù)字,下劃線,減號(hào))
var uPattern = /^[a-zA-Z0-9_-]{4,16}$/; //輸出 true console.log(uPattern.test("caibaojian")); 密碼強(qiáng)度正則 //密碼強(qiáng)度正則,最少6位,包括至少1個(gè)大寫(xiě)字母,1個(gè)小寫(xiě)字母,1個(gè)數(shù)字,1個(gè)特殊字符 var pPattern = /^.*(?=.{6,})(?=.*\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&*? ]).*$/; //輸出 true console.log("=="+pPattern.test("caibaojian#"));
整數(shù)正則
//正整數(shù)正則 var posPattern = /^\d+$/; //負(fù)整數(shù)正則 var negPattern = /^-\d+$/; //整數(shù)正則 var intPattern = /^-?\d+$/; //輸出 true console.log(posPattern.test("42")); //輸出 true console.log(negPattern.test("-42")); //輸出 true console.log(intPattern.test("-42"));
數(shù)字正則
//可以是整數(shù)也可以是浮點(diǎn)數(shù) //正數(shù)正則 var posPattern = /^\d*\.?\d+$/; //負(fù)數(shù)正則 var negPattern = /^-\d*\.?\d+$/; //數(shù)字正則 var numPattern = /^-?\d*\.?\d+$/; console.log(posPattern.test("42.2")); console.log(negPattern.test("-42.2")); console.log(numPattern.test("-42.2"));
Email正則
//Email正則 var ePattern = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/; //輸出 true console.log(ePattern.test(99154507@qq.com));
身份證號(hào)正則
//身份證號(hào)(18位)正則 var cP = /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/; //輸出 true console.log(cP.test("11010519880605371X"));
URL正則
//URL正則 var urlP= /^((https?|ftp|file):\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/; //輸出 true console.log(urlP.test(http://caibaojian.com)); IPv4地址正則 //ipv4地址正則 var ipP = /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/; //輸出 true console.log(ipP.test("115.28.47.26")); 十六進(jìn)制顏色正則 //RGB Hex顏色正則 var cPattern = /^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/; //輸出 true console.log(cPattern.test("#b8b8b8"));
日期正則
//日期正則,簡(jiǎn)單判定,未做月份及日期的判定 var dP1 = /^\d{4}(\-)\d{1,2}\1\d{1,2}$/; //輸出 true console.log(dP1.test("2017-05-11")); //輸出 true console.log(dP1.test("2017-15-11")); //日期正則,復(fù)雜判定 var dP2 = /^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$/; //輸出 true console.log(dP2.test("2017-02-11")); //輸出 false console.log(dP2.test("2017-15-11")); //輸出 false console.log(dP2.test("2017-02-29"));
QQ號(hào)碼正則
//QQ號(hào)正則,5至11位 var qqPattern = /^[1-9][0-9]{4,10}$/; //輸出 true console.log(qqPattern.test("65974040"));
微信號(hào)正則
//微信號(hào)正則,6至20位,以字母開(kāi)頭,字母,數(shù)字,減號(hào),下劃線 var wxPattern = /^[a-zA-Z]([-_a-zA-Z0-9]{5,19})+$/; //輸出 true console.log(wxPattern.test("caibaojian_com"));
車(chē)牌號(hào)正則
//車(chē)牌號(hào)正則 var cPattern = /^[京津滬渝冀豫云遼黑湘皖魯新蘇浙贛鄂桂甘晉蒙陜吉閩貴粵青藏川寧瓊使領(lǐng)A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9掛學(xué)警港澳]{1}$/; //輸出 true console.log(cPattern.test("粵B39006"));
包含中文正則
//包含中文正則 var cnPattern = /[\u4E00-\u9FA5]/; //輸出 true console.log(cnPattern.test("董董董")); 整數(shù)或者小數(shù):^[0-9]+\.{0,1}[0-9]{0,2}$ 只能輸入數(shù)字:"^[0-9]*$"。 只能輸入n位的數(shù)字:"^\d{n}$"。 只能輸入至少n位的數(shù)字:"^\d{n,}$"。 只能輸入m~n位的數(shù)字:。"^\d{m,n}$" 只能輸入零和非零開(kāi)頭的數(shù)字:"^(0|[1-9][0-9]*)$"。 只能輸入有兩位小數(shù)的正實(shí)數(shù):"^[0-9]+(.[0-9]{2})?$"。 只能輸入有1~3位小數(shù)的正實(shí)數(shù):"^[0-9]+(.[0-9]{1,3})?$"。 只能輸入非零的正整數(shù):"^\+?[1-9][0-9]*$"。 只能輸入非零的負(fù)整數(shù):"^\-[1-9][]0-9"*$。 只能輸入長(zhǎng)度為3的字符:"^.{3}$"。 只能輸入由26個(gè)英文字母組成的字符串:"^[A-Za-z]+$"。 只能輸入由26個(gè)大寫(xiě)英文字母組成的字符串:"^[A-Z]+$"。 只能輸入由26個(gè)小寫(xiě)英文字母組成的字符串:"^[a-z]+$"。 只能輸入由數(shù)字和26個(gè)英文字母組成的字符串:"^[A-Za-z0-9]+$"。 只能輸入由數(shù)字、26個(gè)英文字母或者下劃線組成的字符串:"^\w+$"。 驗(yàn)證用戶密碼:"^[a-zA-Z]\w{5,17}$"正確格式為:以字母開(kāi)頭,長(zhǎng)度在6~18之間,只能包含字符、數(shù)字和下劃線。 驗(yàn)證是否含有^%&'',;=?$\"等字符:"[^%&'',;=?$\x22]+"。 只能輸入漢字:"^[\u4e00-\u9fa5]{0,}$" 驗(yàn)證Email地址:"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"。 驗(yàn)證InternetURL:"^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$"。 驗(yàn)證電話號(hào)碼:"^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$"正確格式為:"XXX-XXXXXXX"、"XXXX- XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX"。 驗(yàn)證身份證號(hào)(15位或18位數(shù)字):"^\d{15}|\d{18}$"。 驗(yàn)證一年的12個(gè)月:"^(0?[1-9]|1[0-2])$"正確格式為:"01"~"09"和"1"~"12"。 驗(yàn)證一個(gè)月的31天:"^((0?[1-9])|((1|2)[0-9])|30|31)$"正確格式為;"01"~"09"和"1"~"31"。整數(shù)或者小數(shù):^[0-9]+\.{0,1}[0-9]{0,2}$ 只能輸入數(shù)字:"^[0-9]*$"。 只能輸入n位的數(shù)字:"^\d{n}$"。 只能輸入至少n位的數(shù)字:"^\d{n,}$"。 只能輸入m~n位的數(shù)字:。"^\d{m,n}$" 只能輸入零和非零開(kāi)頭的數(shù)字:"^(0|[1-9][0-9]*)$"。 只能輸入有兩位小數(shù)的正實(shí)數(shù):"^[0-9]+(.[0-9]{2})?$"。 只能輸入有1~3位小數(shù)的正實(shí)數(shù):"^[0-9]+(.[0-9]{1,3})?$"。 只能輸入非零的正整數(shù):"^\+?[1-9][0-9]*$"。 只能輸入非零的負(fù)整數(shù):"^\-[1-9][]0-9"*$。 只能輸入長(zhǎng)度為3的字符:"^.{3}$"。 只能輸入由26個(gè)英文字母組成的字符串:"^[A-Za-z]+$"。 只能輸入由26個(gè)大寫(xiě)英文字母組成的字符串:"^[A-Z]+$"。 只能輸入由26個(gè)小寫(xiě)英文字母組成的字符串:"^[a-z]+$"。 只能輸入由數(shù)字和26個(gè)英文字母組成的字符串:"^[A-Za-z0-9]+$"。 只能輸入由數(shù)字、26個(gè)英文字母或者下劃線組成的字符串:"^\w+$"。 驗(yàn)證用戶密碼:"^[a-zA-Z]\w{5,17}$"正確格式為:以字母開(kāi)頭,長(zhǎng)度在6~18之間,只能包含字符、數(shù)字和下劃線。 驗(yàn)證是否含有^%&'',;=?$\"等字符:"[^%&'',;=?$\x22]+"。 只能輸入漢字:"^[\u4e00-\u9fa5]{0,}$" 驗(yàn)證Email地址:"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"。 驗(yàn)證InternetURL:"^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$"。 驗(yàn)證電話號(hào)碼:"^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$"正確格式為:"XXX-XXXXXXX"、"XXXX- XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX"。 驗(yàn)證身份證號(hào)(15位或18位數(shù)字):"^\d{15}|\d{18}$"。 驗(yàn)證一年的12個(gè)月:"^(0?[1-9]|1[0-2])$"正確格式為:"01"~"09"和"1"~"12"。 驗(yàn)證一個(gè)月的31天:"^((0?[1-9])|((1|2)[0-9])|30|31)$"正確格式為;"01"~"09"和"1"~"31"。
到此,相信大家對(duì)“JS正則表達(dá)式整合”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!