婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 常用JavaScript正則表達(dá)式匯編與示例詳解

常用JavaScript正則表達(dá)式匯編與示例詳解

熱門標(biāo)簽:西藏智能外呼系統(tǒng)代理商 呼叫系統(tǒng)外呼只能兩次 外呼系統(tǒng)無呼出路由是什么原因 400電話辦理電話辦理 貴港公司如何申請400電話 地圖標(biāo)注教學(xué)點 梅縣地圖標(biāo)注 甘肅醫(yī)療外呼系統(tǒng)排名 ai電話機器人搭建

1.1 前言

目前收集整理了21個常用的javaScript正則表達(dá)式,其中包括用戶名、密碼強度、整數(shù)、數(shù)字、電子郵件地址(Email)、手機號碼、身份證號、URL地址、 IP地址、 十六進(jìn)制顏色、 日期、 微信號、車牌號、中文正則等。表單驗證處理必備,趕緊收藏吧!

還會陸續(xù)加入新的正則進(jìn)來,大家多提寶貴意見!

2.1 用戶名正則

2.1.1 基本用戶名正則

在做用戶注冊時,都會用到用戶名正則校驗。

定義基本用戶名命名規(guī)則如下:

  1. 最短4位,最長16位 {4,16}
  2. 可以包含小寫大母 [a-z] 和大寫字母 [A-Z]
  3. 可以包含數(shù)字 [0-9]
  4. 可以包含下劃線 [ _ ] 和減號 [ - ]
  5. 首字母只能是大小寫字母
var pattern = /^[a-zA-Z][a-zA-Z0-9_-]{3,15}$/;
//輸出 true
console.log("ifat3 : "+pattern.test('ifat3'));
//輸出 true
console.log("Ifat3 : "+pattern.test('Ifat3'));
//輸出 true
console.log("ke30 : "+pattern.test('ke30'));
//輸出 false
console.log("30ke : "+pattern.test('30ke'));
//輸出 false
console.log("ke3 : "+pattern.test('ke3'));
輸出 false
console.log("ke30@ : "+pattern.test('ke30@'));
//輸出 false
console.log("ke30ke30ke30ke30ke30 : "+pattern.test('ke30ke30ke30ke30ke30'));

2.1.2 中文用戶名正則

如果規(guī)則中加入允許中文用戶名,則變更正則表達(dá)式如下:

var pattern = /^[a-zA-Z\u4E00-\u9FA5][a-zA-Z0-9\u4E00-\u9FA5_-]{3,15}$/;
//輸出 true
console.log("ifat3 : "+pattern.test('ifat3'));
//輸出 true
console.log("Ifat3 : "+pattern.test('Ifat3'));
//輸出 true
console.log("三十課毛瑞 : "+pattern.test('三十課毛瑞'));
//輸出 false
console.log("30ke : "+pattern.test('30ke'));
//輸出 false
console.log("ke3 : "+pattern.test('ke3'));
//輸出 false
console.log("ke30@ : "+pattern.test('ke30@'));
 //輸出 false
console.log("ke30ke30ke30ke30ke30 : "+pattern.test('ke30ke30ke30ke30ke30'));

其中[\u4E00-\u9FA5]是漢字的正則匹配,包括基本漢字2萬多個,其中\(zhòng)u4E00表示漢字“一”,具體請參見《漢字unicode編碼范圍》。

2.2 密碼強度正則

//密碼強度正則,最少6位,包括至少1個大寫字母,1個小寫字母,1個數(shù)字,1個特殊字符
var pPattern = /^.*(?=.{6,})(?=.*\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^*? ]).*$/;
//輸出 true
console.log("iFat3#:"+pPattern.test("iFat3#"));

上述正則表達(dá)式只能對用戶密碼強度進(jìn)行基本的通過性判定,關(guān)于密碼強度驗證更多的內(nèi)容可參見:基于規(guī)則評分的密碼強度檢測算法分析及實現(xiàn)。

2.3 數(shù)字相關(guān)正則

2.3.1 整數(shù)正則

//正整數(shù)正則
var posPattern = /^\d+$/;
//負(fù)整數(shù)正則
var negPattern = /^-\d+$/;
//整數(shù)正則
var intPattern = /^-?\d+$/;
//輸出 true
console.log("30:"+posPattern.test("30"));
//輸出 true
console.log("-30:"+negPattern.test("-30"));
//輸出 true
console.log("-30:"+intPattern.test("-30"));

2.3.2 浮點數(shù)正則

//正浮點數(shù)正則
var posPattern = /^\d*\.\d+$/;
//負(fù)浮點數(shù)正則
var negPattern = /^-\d*\.\d+$/;
//兩位小數(shù)正則
var twoPattern = /^-?\d*\.\d{2}$/; 
//輸出 true
console.log("30.2:"+posPattern.test("30.2"));
//輸出 true 
console.log("-30.2:"+negPattern.test("-30.2"));
//輸出 true 
console.log("-30.22:"+twoPattern.test("-30.22"));

2.3.3 整數(shù)浮點數(shù)正則

可以是整數(shù)也可以是浮點數(shù)

//正數(shù)正則
var posPattern = /^\d*\.?\d+$/;
//負(fù)數(shù)正則
var negPattern = /^-\d*\.?\d+$/;
//數(shù)字正則
var numPattern = /^-?\d*\.?\d+$/;
//輸出 true
console.log("30.2:"+posPattern.test("30.2"));
//輸出 true 
console.log("-30.2:"+negPattern.test("-30.2"));
//輸出 true 
console.log("-30.2:"+numPattern.test("-30.2"));

2.4 日期正則

2.4.1 出生日期正則

var pattern = /^((19[2-9]\d{1})|(20((0[0-9])|(1[0-8]))))\-((0?[1-9])|(1[0-2]))\-((0?[1-9])|([1-2][0-9])|30|31)$/;
//輸出 true
console.log(pattern.test("1923-3-18"));
//輸出 true
console.log(pattern.test("1923-4-31"));
//輸出 true
console.log(pattern.test("1923-2-29"));
//輸出 true
console.log(pattern.test("2016-2-29"));

上述正則驗證還不完善,主要是2,4,6,9,11月份的天數(shù)問題。

2.4.2 通用日期正則

//日期正則,復(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"));

2.5 Email正則

2.5.1 基本Email正則

var pattern = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
//輸出 true
console.log(pattern.test('cn30ke@163.com'));
//輸出 true
console.log(pattern.test('ifat3@sina.com.cn'));
//輸出 true
console.log(pattern.test('ifat3.it@163.com'));
//輸出 true
console.log(pattern.test('ifat3_-.@30ke.cn'));
//輸出 false
console.log(pattern.test('ifat3@30ke.online'));
//輸出 false
console.log(pattern.test('毛瑞@30ke.cn'));

基本Email正則是最常用的驗證方式,也適合大多數(shù)的應(yīng)用場景。從以上測試可以看出,該表達(dá)式不支持.online及.store結(jié)尾的域名。如需兼容這類域名(大于4位),調(diào)整正則結(jié)尾{2,4}的限制部分即可(例:{2,8})。另一個問題是Email用戶名不能包括中文。

2.5.2 中文名Email正則

根據(jù)前一正則中的問題,追加兩條規(guī)則如下:

用戶名可以包括中文 [\u4e00-\u9fa5]
域名結(jié)尾最長可為8位 {2,8}

var pattern = /^([A-Za-z0-9_\-\.\u4e00-\u9fa5])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,8})$/;
//輸出 true
console.log(pattern.test('cn30ke@163.com'));
//輸出 true
console.log(pattern.test('ifat3@sina.com.cn'));
//輸出 true
console.log(pattern.test('ifat3.it@163.com'));
//輸出 true
console.log(pattern.test('ifat3_-.@30ke.cn'));
//輸出 true
console.log(pattern.test('ifat3@30ke.online'));
//輸出 true
console.log(pattern.test('毛瑞@30ke.cn'));

2.5.3 特定域名Email正則

在手機驗證碼出現(xiàn)之前,差不多郵箱驗證是保證用戶唯一性的唯一條件。而臨時郵箱(也稱10分鐘郵箱或一次性郵箱)的出現(xiàn),則使得郵箱驗證及帳戶激活這種機制失去了意義。而臨時郵箱的地址是不可枚舉的,我們只能才采取白名單的方式,只允許有限的郵箱域名通過驗證。

var pattern = /^([A-Za-z0-9_\-\.])+\@(163.com|qq.com|30ke.cn)$/;
//輸出 true
console.log(pattern.test('cn30ke@163.com'));
//輸出 false
console.log(pattern.test('ifat3@sina.com.cn'));
//輸出 true
console.log(pattern.test('ifat3.it@163.com'));
//輸出 true
console.log(pattern.test('ifat3_-.@30ke.cn'));
//輸出 false
console.log(pattern.test('ifat3@30ke.online'));
//輸出 false
console.log(pattern.test('毛瑞@30ke.cn'));

此方法雖然能保證驗證安全性,但是如果白名單太長會造成模式字符串太長。這時可以將郵箱域名白名單寫成數(shù)組,利用正則表達(dá)式做初步驗證,用白名單做域名的二次驗證。

常用域名白名單數(shù)組:

var domains= ["qq.com","163.com","vip.163.com","263.net","yeah.net","sohu.com","sina.cn","sina.com","eyou.com","gmail.com","hotmail.com"];

上述白名單只列舉了常用的11種郵箱域名,大家可以根據(jù)需要適當(dāng)補充或刪減。

2.6 手機號碼正則

//手機號正則
var mPattern = /^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(18[0,5-9]))\d{8}$/;
//輸出 true
console.log(mPattern.test("18600000000"));

2.7 身份證號正則

//身份證號(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"));

上述正則只能對身份證號進(jìn)行基本的通過性判定,關(guān)于公民身份號碼判定的更多內(nèi)容可參見文檔:公民身份號碼正確性判定及程序?qū)崿F(xiàn)

2.8 URL正則

//URL正則
var urlP= /^((https?|ftp|file):\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/;
//輸出 true
console.log(urlP.test(http://30ke.cn));

2.9 IP地址

2.9.1 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"));

2.9.2 IPv6地址正則

//IPV6正則
var pattern = /(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))/;
//輸出 true
console.log(pattern.test("fe80:0000:0000:0000:0204:61ff:fe9d:f156"));

2.10 十六進(jìn)制顏色正則

//RGB Hex顏色正則
var cPattern = /^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/;
//輸出 true
console.log(cPattern.test("#b8b8b8"));

2.11 QQ號碼正則

//QQ號正則,5至11位
var qqPattern = /^[1-9][0-9]{4,10}$/;
//輸出 true
console.log(qqPattern.test("65974040"));

2.12 微信號正則

//微信號正則,6至20位,以字母開頭,字母,數(shù)字,減號,下劃線
var wxPattern = /^[a-zA-Z]([-_a-zA-Z0-9]{5,19})+$/;
//輸出 true
console.log(wxPattern.test("RuilongMao"));

2.13 車牌號正則

//車牌號正則
var cPattern = /^[京津滬渝冀豫云遼黑湘皖魯新蘇浙贛鄂桂甘晉蒙陜吉閩貴粵青藏川寧瓊使領(lǐng)A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9掛學(xué)警港澳]{1}$/;
//輸出 true
console.log(cPattern.test("京K39006"));

2.14 包含中文正則

//包含中文正則
var cnPattern = /[\u4E00-\u9FA5]/;
//輸出 true
console.log(cnPattern.test("30課"));

總結(jié)

以上所述是小編給大家介紹的常用JavaScript正則表達(dá)式匯編與示例詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

您可能感興趣的文章:
  • 匯編語言 and和or邏輯運算指令的實現(xiàn)
  • 匯編語言編譯環(huán)境搭建過程
  • Windows10下利用DOSBOX和MASM32搭建匯編語言開發(fā)環(huán)境
  • 詳解匯編語言RCL(帶進(jìn)位循環(huán)左移)和RCR(帶進(jìn)位循環(huán)右移)指令
  • 匯編語言XOR指令:對兩個操作數(shù)進(jìn)行邏輯(按位)異或操作(推薦)
  • 匯編語言 輸入10個數(shù)排序并輸出的實現(xiàn)
  • 匯編語言之寄存器詳解
  • 匯編語言環(huán)境搭建軟件與教程
  • 匯編語言入門教程阮一峰版
  • 匯編語言AAD,DAA,DAS用法解析

標(biāo)簽:大興安嶺 本溪 湖州 哈密 海口 常州 泰安 涼山

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《常用JavaScript正則表達(dá)式匯編與示例詳解》,本文關(guān)鍵詞  常用,JavaScript,正則,表達(dá)式,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《常用JavaScript正則表達(dá)式匯編與示例詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于常用JavaScript正則表達(dá)式匯編與示例詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    欧美视频在线观看一区| 午夜激情综合网| 日韩一区二区精品葵司在线| 欧美日韩在线播放三区四区| 精品视频免费在线| 欧美久久久久久蜜桃| 91精品午夜视频| 欧美一区二区三区四区久久| 日韩区在线观看| 精品国产免费人成在线观看| 久久久国产一区二区三区四区小说 | 一区二区三区在线免费观看| 国产精品国产精品国产专区不蜜| 久久久久久久一区| 国产精品卡一卡二卡三| 亚洲丝袜美腿综合| 天堂资源在线中文精品| 日本在线不卡一区| 高清视频一区二区| 色综合久久久久网| 91精品国产综合久久福利软件| 日韩精品一区二区三区在线 | 国产欧美日韩精品a在线观看| 久久九九影视网| 亚洲男帅同性gay1069| 亚洲成av人在线观看| 九色porny丨国产精品| 高清不卡一区二区| 91丨porny丨国产| 91精品国产全国免费观看| 国产亚洲一区二区三区| 一级特黄大欧美久久久| 国产一区视频网站| 色激情天天射综合网| 日韩精品一区二区三区在线| 日韩理论片一区二区| 日本sm残虐另类| av一本久道久久综合久久鬼色| 欧美日韩一二三| 国产精品久久久久久久久免费相片 | 国产1区2区3区精品美女| 在线免费观看日韩欧美| 久久一留热品黄| 性做久久久久久免费观看欧美| 国产成人啪午夜精品网站男同| 一区二区三区免费| 精品无码三级在线观看视频| 日本大香伊一区二区三区| 久久久精品tv| 男男视频亚洲欧美| 色婷婷精品大视频在线蜜桃视频| 欧美大片一区二区三区| 一区二区三区四区视频精品免费 | 国产99久久久久久免费看农村| 欧美日韩色综合| 亚洲人成伊人成综合网小说| 成人一区在线看| 精品久久一区二区| 男女男精品网站| 欧美一区二区三区四区五区| 天天色天天爱天天射综合| 在线观看国产日韩| 亚洲色图丝袜美腿| 不卡的av在线| 国产精品久久久久久久午夜片| 国产成人一区二区精品非洲| 久久一日本道色综合| 麻豆极品一区二区三区| 欧美一区二区三区免费观看视频 | 国产精品久久久久久福利一牛影视| 麻豆成人综合网| 欧美成人三级电影在线| 日本欧美在线看| 91精品视频网| 久久国产精品无码网站| 精品三级av在线| 国产剧情一区二区三区| 久久男人中文字幕资源站| 国产一区二区视频在线播放| 久久先锋影音av| 国产成人午夜高潮毛片| 国产精品家庭影院| 在线视频中文字幕一区二区| 亚洲成人第一页| 日韩视频免费直播| 国产剧情一区二区三区| 久久精品国产一区二区| 久久夜色精品一区| www.av精品| 性久久久久久久| 精品蜜桃在线看| 成人激情小说网站| 亚洲成人福利片| 欧美精品一区二区三区蜜桃| 成人avav在线| 五月综合激情日本mⅴ| 精品久久久久久综合日本欧美 | 欧美综合欧美视频| 婷婷综合另类小说色区| 欧美tickle裸体挠脚心vk| 国产成人精品影视| 亚洲精品成人在线| 日韩欧美你懂的| 成人h版在线观看| 午夜视频在线观看一区二区| 欧美精品一区二区高清在线观看| 成人黄色av电影| 日韩中文字幕一区二区三区| 国产亚洲精品福利| 在线视频国内自拍亚洲视频| 久久国产乱子精品免费女| 一区二区中文视频| 日韩女优毛片在线| 色综合天天视频在线观看| 蜜臀av性久久久久av蜜臀妖精| 国产精品入口麻豆原神| 在线观看91av| 不卡一卡二卡三乱码免费网站| 午夜精品123| 亚洲免费资源在线播放| www国产精品av| 欧美久久高跟鞋激| 91亚洲精华国产精华精华液| 国产主播一区二区| 日韩一区精品字幕| 一区二区三区蜜桃| 欧美激情综合网| 日韩免费电影网站| 91蜜桃免费观看视频| 国产一区二区三区免费观看| 日韩影院精彩在线| 亚洲综合色网站| 亚洲婷婷国产精品电影人久久| 精品国产制服丝袜高跟| 欧美女孩性生活视频| 色综合色综合色综合色综合色综合 | 日本欧洲一区二区| 午夜电影一区二区三区| 亚洲一区二区三区四区不卡 | 欧美综合在线视频| 色婷婷av一区二区三区gif | 国产资源精品在线观看| 日本不卡一区二区三区高清视频| 亚洲一区二区三区不卡国产欧美| 亚洲欧美一区二区三区国产精品| 日本一区二区不卡视频| 国产亚洲一区字幕| 中文字幕电影一区| 国产精品每日更新| 国产精品黄色在线观看| 国产精品美女一区二区三区| 中文字幕在线播放不卡一区| 国产精品乱码一区二区三区软件| 久久九九全国免费| 国产精品女人毛片| 亚洲人成亚洲人成在线观看图片| 日韩美女视频一区二区| 亚洲日韩欧美一区二区在线| 中文字幕在线不卡视频| 一区二区免费在线| 日韩国产一二三区| 国内久久精品视频| 国产a精品视频| 91在线播放网址| 欧美在线不卡视频| 91精品国产丝袜白色高跟鞋| 日韩欧美卡一卡二| 26uuu久久综合| 亚洲丝袜另类动漫二区| 亚洲已满18点击进入久久| 亚洲18女电影在线观看| 精品一区二区在线看| 成人99免费视频| 欧美日韩一区二区电影| 2021国产精品久久精品| 亚洲女同女同女同女同女同69| 亚洲午夜久久久| 久久99精品国产麻豆婷婷| 成人高清免费观看| 91麻豆精品国产自产在线观看一区 | www.欧美.com| 制服丝袜中文字幕一区| 久久久久久久久一| 一区二区三区欧美亚洲| 国产一区二区免费在线| 色丁香久综合在线久综合在线观看| 91精品国产品国语在线不卡| 中文字幕一区二区三区色视频| 日韩精品成人一区二区三区| 国产成人免费xxxxxxxx| 欧美高清视频不卡网| 中文字幕日韩一区二区| 看片的网站亚洲| 欧美日韩一区中文字幕| 中文字幕不卡在线观看| 另类小说欧美激情| 欧美在线短视频| 亚洲欧美视频在线观看视频| 国产一区中文字幕| 欧美区一区二区三区|