我們已經知道正則表達式中數字集合可以表示成[0-9]非數字集合表示成[^0-9],但是這兩個集合是非常常用的每次用到都要寫成這樣略顯繁瑣,所以在正則表達式中又引入了元字符類的概念,一個元字符類代表了一種常用的字符集合,例如[0-9]用元字符可以表示爲\d,[^0-9]表示爲\D。其中反斜槓是轉義符用來區分元字符與一般字符。下表就是常用元字符和集合對照表
元字符 | 集合 | 說明 |
---|---|---|
\d | [0-9] | 匹配所有數字字符 |
\D | [^0-9] | 匹配所有非數字字符 |
\w | [a-zA-Z0-9_] | 匹配所有大小寫字母數字以及下劃線字符 |
\W | [^a-zA-Z0-9_] | \w取反 |
\s | [\f\n\r\t\v] | 匹配所有空白字符 |
\S | [^\f\n\r\t\v] | 匹配所有非空白字符 |
var r1 = /\d\d\d\d/g
var r2 = /\w\w\w\w/g
var r3 = /\d\d\s\s\d\d/g
var str = "ww1234wwww 12 34dddd";
console.log(str.match(r1));//["1234"]
console.log(str.match(r2));//["ww12", "34ww", "34dd"]
console.log(str.match(r3));//["12 34"]
r1匹配4個連續的數字,r2匹配4個連續的字母數字或者下劃線,r3匹配2個數字後面接着2個空白字符再加上2個數字