JavaScript正則表達式
\d 數字 {2}表示固定2位 .表示任意字符 *表示任意位數
(\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2},\\d{3}) \\[.*\\]\\[.*\\] .* - .*";
"^"和"$"
通過在正則表達式的開始添加"^"以及末尾添加"$"來表示一個整體。
若不使用它們,那麼正則表達式只匹配某個字符串的部分內容是否符合格式規則,但使用它們,則要求字符串必須從頭到尾都滿足該格式規則。
只能輸入0-9數字
var ckCellNumber = /^[0-9]+$/;
只能輸入英文A-Z大小寫都可以 長度4-5位
var c = /^[Aa-z]{3,4}$/;
if(c.test('adfaf')){
alert("true");
}else{
alert("flase");
}
身份證驗證 d表示數字 {15}表示限制15位 |或者的意思 d表示數字 {18}表示限制18位 d|X|x數字加Xx
var ckcardId = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
[1-9]第一個全是數字,不以0開頭 [0-1]第二個只能0-1的數字 {2,8}2-8位
var i = /^[1-9][0-1]{2,8}$/;
if(i.test('101')){
alert("true");
}else{
alert("flase");
}
分組"()","|" () 可以將內容看做一個整體,()中可以使用"|"來表示或關係。
驗證國內電話 手機 號碼格式如下 0555-6581752、021-86128488 13435302281
0555-6581752 [0-9]{3} 只能輸入3位數字, -國內電話-號, [1-9][0-9]{6}只能輸入1-9數字 只能輸入0-9數字 只能輸入6位
021-86128488 [0-9]{2} 只能輸入2位數字, -國內電話-號, [1-9][0-9]{7}只能輸入1-9數字 只能輸入0-9數字 只能輸入7位
13435302281 [1-9][0-9]{10,10} 只能輸入11位數字 開頭數字 1-9 第2個0-9
var b = /(^0[0-9]{3}-[1-9][0-9]{6}$)|(^0[0-9]{2}-[1-9][0-9]{7}$)|(^[1-9][0-9]{10,10})/;
if(b.test('0555-6581752')){
alert("true");
}else{
alert("flase");
}
\d
,匹配單個數字;d 是 digit 這個單詞的縮寫,它的中文意思就是「數字」\w
,匹配單個單詞字符,w 是 word 的縮寫,就是字母 a-z,數字 0-9,不包括逗號、句號、加減乘除號、括號等。\s
,匹配單個空白字符,s 是 space 的縮寫,就是空白的意思。\n
,匹配換行符,n 是 newline 的縮寫,中文就是換行。\r
,匹配回車符,r 就是 return 的縮寫,回車在這裏就是它的中文意思。\t
,匹配製表符,就是 tab 鍵打出來的一串用以縮進的空白字符,tab 是 tabel 的縮寫,table 就有表格和製表的意思。\b
,匹配單詞邊界,b 是 boundary 的縮寫,中文就是邊界的意思。- var c = /\w{3,4}$/;
if(c.test(zengyongbin)){
alert("true");
}else{
alert("flase");
}
}
匹配一個電話號碼,形式如 020-88813243。·
簡單版本,(開頭)三個數字+一個橫槓+八個數字(結尾),就是/^\d{3}-\d{8}$/
。
需求變化,只匹配 020 開頭的電話號碼,就是/^020-\d{8}$/
。
需求變化,支持分機,分機爲 5 個數字,加後綴,就是/^020-\d{8}-\d{5}$/
。
需求變化,電話號碼可以是7個,用區間量詞,就是/^020-\d{7,8}-\d{5}$/
。
需求變化,有可能沒有分機,用區間量詞,中括號包裹住分機爲一組,後面加個問號,表示0或多個,就是/^020-\d{7,8}(-\d{5})?$/
。
需求變化,區隔符可能是橫槓,也可能是星號或空格,用集合表達式,就是/^020[-*\s]\d{7,8}([-*\s]\d{5})?$/