[js]正規表示式

torrrino發表於2017-04-15

正規表示式中的特殊字元:

\       做為轉意,即通常在"\"後面的字元不按原來意義解釋,如/b/匹配字元"b",當b前面加了反斜杆後/\b/,轉意為匹配一個單詞的邊界。或者, 對正則         表示式功能字元的還原,如"*"匹配它前面元字元0次或多次,/a*/將匹配a,aa,aaa,加了"\"後,/a\*/將只匹配"a*"。 

\n      換行符 

\r      回車符 

\t      製表符  

\f      換頁符(Tab)  

\cX     與X對應的控制字元  

\b      退格符(BackSpace)  

\v      垂直製表符  

\0      空字元("")


.     IE下[^\n],其它[^\n\r]  匹配除換行符之外的任何一個字元  

\d    [0-9]                   匹配數字 

\D    [^0-9]                  匹配非數字字元  

\s    [ \n\r\t\f\x0B]         匹配一個空白字元  

\S    [^ \n\r\t\f\x0B]        匹配一個非空白字元  

\w    [a-zA-Z0-9_]            匹配字母數字和下劃線  

\W    [^a-zA-Z0-9_]           匹配除字母數字下劃線之外的字元


*     匹配前面的子表示式零次或多次。例如,zo* 能匹配 "z" 以及 "zoo"。 * 等價於{0,}。  

+     匹配前面的子表示式一次或多次。例如,'zo+' 能匹配 "zo" 以及 "zoo",但不能匹配 "z"。+ 等價於 {1,}。  

?     匹配前面的子表示式零次或一次。例如,"do(es)?" 可以匹配 "do" 或 "does" 中的"do" 。? 等價於 {0,1}。  

{n}   n 是一個非負整數。匹配確定的 n 次。例如,'o{2}' 不能匹配 "Bob" 中的 'o',但是能匹配 "food" 中的兩個 o。 

 {n,}  n 是一個非負整數。至少匹配n 次。例如,'o{2,}' 不能匹配 "Bob" 中的 'o',但能匹配 "foooood" 中的所有 o。'o{1,}' 等價於 'o+'。'o{0,}' 則等價於 'o*'。  

{n,m} m 和 n 均為非負整數,其中n <= m。最少匹配 n 次且最多匹配 m 次。劉, "o{1,3}" 將匹配 "fooooood" 中的前三個 o。'o{0,1}' 等價於 'o?'。請注意在逗號和兩個數之間不能有空格

例:

var reg = /^\d*\*[^\d]*[\w]{6}$/;
如***abcABCD_89,123*abcAbcd_89都能夠匹配。




相關文章