正則常用

一、校驗數(shù)字的表達式

//'數(shù)值范圍0-100,可保留兩位小數(shù)
reg= /^(?:100|\d{1,2})(?:\.\d{1,2})?$/;
//正數(shù)且保留兩位小數(shù)
reg= /^(?!0+(?:\.0+)?$)(?:[1-9]\d*|0)(?:\.\d{1,2})?$/;
//正整數(shù)
reg=/(^[1-9]\d*$)/;
//數(shù)字:
reg=^[0-9]*$
//n位的數(shù)字:
reg=^\d{n}$
//至少n位的數(shù)字:
reg=^\d{n,}$
//m-n位的數(shù)字:
reg=^\d{m,n}$
//零和非零開頭的數(shù)字:
reg=^(0|[1-9][0-9]*)$
//非零開頭的最多帶兩位小數(shù)的數(shù)字:
reg=^([1-9][0-9]*)+(\.[0-9]{1,2})?$
//帶1-2位小數(shù)的正數(shù)或負數(shù):
reg=^(\-)?\d+(\.\d{1,2})$
//正數(shù)膛腐、負數(shù)、和小數(shù):
reg=^(\-|\+)?\d+(\.\d+)?$
//有兩位小數(shù)的正實數(shù):
reg=^[0-9]+(\.[0-9]{2})?$
//有1~3位小數(shù)的正實數(shù):
reg=^[0-9]+(\.[0-9]{1,3})?$
//非零的正整數(shù):
reg=^[1-9]\d*$ 
reg= ^([1-9][0-9]*){1,3}$ 
reg= ^\+?[1-9][0-9]*$
//非零的負整數(shù):
reg= ^\-[1-9][]0-9*$ 
reg= ^-[1-9]\d*$
//非負整數(shù):
reg= ^\d+$ 
reg= ^[1-9]\d*|0$
//非正整數(shù):
reg= ^-[1-9]\d*|0$ 
reg= ^((-\d+)|(0+))$
//非負浮點數(shù):
reg= ^\d+(\.\d+)?$ 
reg= ^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$
//非正浮點數(shù):
reg= ^((-\d+(\.\d+)?)|(0+(\.0+)?))$ 
reg= ^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$
//正浮點數(shù):
reg= ^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$ 
reg= ^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$
//負浮點數(shù):
reg= ^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$ 
reg= ^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$
//浮點數(shù):
reg= ^(-?\d+)(\.\d+)?$ 
reg= ^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$

校驗字符的表達式

//漢字:
reg= ^[\u4e00-\u9fa5]{0,}$
//英文和數(shù)字:
reg= ^[A-Za-z0-9]+$reg= ^[A-Za-z0-9]{4,40}$
//長度為3-20的所有字符:
reg= ^.{3,20}$
//由26個英文字母組成的字符串:
reg= ^[A-Za-z]+$
//由26個大寫英文字母組成的字符串:
reg= ^[A-Z]+$
//由26個小寫英文字母組成的字符串:
reg= ^[a-z]+$
//由數(shù)字和26個英文字母組成的字符串:
reg= ^[A-Za-z0-9]+$
//由數(shù)字们镜、26個英文字母或者下劃線組成的字符串:
reg= ^\w+$ 
reg= ^\w{3,20}$
//中文横朋、英文、數(shù)字包括下劃線:
reg= ^[\u4E00-\u9FA5A-Za-z0-9_]+$
//中文炊甲、英文、數(shù)字但不包括下劃線等符號:
reg= ^[\u4E00-\u9FA5A-Za-z0-9]+$ 
reg= ^[\u4E00-\u9FA5A-Za-z0-9]{2,20}$
//中英文 _ - 數(shù)字
/^[\u4e00-\u9fa5-_a-zA-Z0-9]+$/;
//可以輸入含有^%&',;=?$\"等字符:
//reg= [^%&',;=?$\x22]+
//禁止輸入含有~的字符:
reg= [^~\x22]+

三欲芹、特殊需求表達式

//Email地址:
reg= ^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
reg= /^[A-Za-z\d]+([-_.][A-Za-z\d]+)*@([A-Za-z\d]+[-.])+[A-Za-z\d]{2,5}$/;
//域名:
reg= [a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+\.?
//InternetURL:
reg= [a-zA-z]+://[^\s]* 或 ^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$
//手機號碼:
reg= ^(13[0-9]|14[5|7]|15[0|1|2|3|4|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$
//電話號碼("XXX-XXXXXXX"卿啡、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"菱父、"XXX-XXXXXXXX"颈娜、"XXXXXXX"和"XXXXXXXX):
reg= ^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$
//國內(nèi)電話號碼(0511-4405222、021-87888822):
reg= ^\d{3}-\d{8}|\d{4}-\d{7}
//電話號碼正則表達式(支持手機號碼浙宜,3-4位區(qū)號官辽,7-8位直播號碼,1-4位分機號): 
reg= ((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)
//身份證號(15位粟瞬、18位數(shù)字)同仆,最后一位是校驗位,可能為數(shù)字或字符X:
reg= (^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)
//帳號是否合法(字母開頭裙品,允許5-16字節(jié)俗批,允許字母數(shù)字下劃線):
reg= ^[a-zA-Z][a-zA-Z0-9_]{4,15}$
//密碼(以字母開頭俗或,長度在6~18之間,只能包含字母扶镀、數(shù)字和下劃線):
reg= ^[a-zA-Z]\w{5,17}$
//強密碼(必須包含大小寫字母和數(shù)字的組合蕴侣,不能使用特殊字符焰轻,長度在 8-10 之間):
reg= ^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[a-zA-Z0-9]{8,10}$
//強密碼(必須包含大小寫字母和數(shù)字的組合臭觉,可以使用特殊字符,長度在8-10之間):
reg= ^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$
//xml文件:
reg= ^([a-zA-Z]+-?)+[a-zA-Z0-9]+\\.[x|X][m|M][l|L]$
//中文字符的正則表達式:
reg= [\u4e00-\u9fa5]
//雙字節(jié)字符:
reg= [^\x00-\xff] (包括漢字在內(nèi)辱志,可以用來計算字符串的長度(一個雙字節(jié)字符長度計2蝠筑,ASCII字符計1))
//空白行的正則表達式:
reg= \n\s*\r (可以用來刪除空白行)
//騰訊QQ號:
reg= [1-9][0-9]{4,} (騰訊QQ號從10000開始)
//中國郵政編碼:
reg= [1-9]\d{5}(?!\d) (中國郵政編碼為6位數(shù)字)
//IPv4地址:
reg= ((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})(\.((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})){3}
/**
* @description: 嚴格校驗身份證
*/
export function IdCard(value, callback){
  if(!value) return
  //校驗所有省份
  const province_code = ['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'];;
  if (province_code.indexOf(value.substr(0, 2)) == -1) {
    callback(new Error('請輸入正確的身份證號碼'));
  }
  let ahead17_char = value.substr(0, 17),
    last_char = value.substr(-1, 1),
    factor = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2],// 前17位的權(quán)重
    c = ['1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'], //模11后的對應(yīng)校驗碼
    t_res = 0;
  for (let i = 0; i < 17; i++) {
    t_res += ahead17_char[i] * factor[i];
  }
  if (last_char != c[t_res % 11]) {
    callback(new Error('請輸入正確的身份證號碼'));
  }
}

//// 參照菜鳥教程

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市揩懒,隨后出現(xiàn)的幾起案子什乙,更是在濱河造成了極大的恐慌,老刑警劉巖已球,帶你破解...
    沈念sama閱讀 216,544評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件臣镣,死亡現(xiàn)場離奇詭異,居然都是意外死亡智亮,警方通過查閱死者的電腦和手機忆某,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來阔蛉,“玉大人弃舒,你說我怎么就攤上這事∽丛” “怎么了聋呢?”我有些...
    開封第一講書人閱讀 162,764評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長颠区。 經(jīng)常有香客問我削锰,道長,這世上最難降的妖魔是什么毕莱? 我笑而不...
    開封第一講書人閱讀 58,193評論 1 292
  • 正文 為了忘掉前任喂窟,我火速辦了婚禮,結(jié)果婚禮上央串,老公的妹妹穿的比我還像新娘磨澡。我一直安慰自己,他們只是感情好质和,可當(dāng)我...
    茶點故事閱讀 67,216評論 6 388
  • 文/花漫 我一把揭開白布稳摄。 她就那樣靜靜地躺著,像睡著了一般饲宿。 火紅的嫁衣襯著肌膚如雪厦酬。 梳的紋絲不亂的頭發(fā)上胆描,一...
    開封第一講書人閱讀 51,182評論 1 299
  • 那天,我揣著相機與錄音仗阅,去河邊找鬼昌讲。 笑死,一個胖子當(dāng)著我的面吹牛减噪,可吹牛的內(nèi)容都是我干的短绸。 我是一名探鬼主播,決...
    沈念sama閱讀 40,063評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼筹裕,長吁一口氣:“原來是場噩夢啊……” “哼醋闭!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起朝卒,我...
    開封第一講書人閱讀 38,917評論 0 274
  • 序言:老撾萬榮一對情侶失蹤证逻,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后抗斤,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體囚企,經(jīng)...
    沈念sama閱讀 45,329評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,543評論 2 332
  • 正文 我和宋清朗相戀三年瑞眼,在試婚紗的時候發(fā)現(xiàn)自己被綠了龙宏。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,722評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡负拟,死狀恐怖烦衣,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情掩浙,我是刑警寧澤花吟,帶...
    沈念sama閱讀 35,425評論 5 343
  • 正文 年R本政府宣布,位于F島的核電站厨姚,受9級特大地震影響衅澈,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜谬墙,卻給世界環(huán)境...
    茶點故事閱讀 41,019評論 3 326
  • 文/蒙蒙 一今布、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧拭抬,春花似錦部默、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春份蝴,著一層夾襖步出監(jiān)牢的瞬間犁功,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評論 1 269
  • 我被黑心中介騙來泰國打工婚夫, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留浸卦,地道東北人。 一個月前我還...
    沈念sama閱讀 47,729評論 2 368
  • 正文 我出身青樓案糙,卻偏偏與公主長得像限嫌,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子侍筛,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,614評論 2 353

推薦閱讀更多精彩內(nèi)容

  • 1.校驗密碼強度:密碼的強度必須是包含大小寫字母和數(shù)字的組合萤皂,不能使用特殊字符撒穷,長度在8-10之間匣椰。 2.校驗中文...
    Super_Yuan閱讀 621評論 0 0
  • ThinkPHP的自動驗證常用的正則 thinkphp 驗證器里的正則使用 一般我們見的比較多的是設(shè)置規(guī)則為req...
    yichen_china閱讀 1,746評論 0 0
  • 正則表達式是用于匹配特殊字符和特殊搭配的字符串的強大工具 正則的兩種創(chuàng)建方式 字面量格式:/pattern/att...
    深度剖析JavaScript閱讀 246評論 0 6
  • 1.驗證用戶名和密碼:("^[a-zA-Z]\w{5,15}$")正確格式:"[A-Z][a-z]_[0-9]"組...
    糖心m閱讀 222評論 0 0
  • 1.python正則表達式提取所有小括號里的字符串 2.python正則表達式提取字符串中間想要的內(nèi)容 3.提取字...
    HAO延WEI閱讀 184評論 0 0