經典有關正則表達式例子
阿新 • • 發佈:2018-04-06
一次 AC body 功能 至少 字符串 數字 個數 換行
有字符串var str=’abc345efgabcab’,請寫出3條JS語句分別實現如下3個功能
(1)去掉字符串中的a、b、c字符,形成結果:’345efg’
(2)將字符串中的數字用中括號括起來,形成結果:’abc[345]efgabcab’
(3)將字符串中的每個數字的值分別乘以2,形成結果:’abc6810efgabcab’
var str = "abc345efgabcab"; str = str.replace(/\[abc\]/g,""); //‘345efg‘ str = str.replace(/(345)/g, "\[$1\]"); //‘abc[345]efgabcab‘ str = str.replace(/\d/g, function(a){ //‘abc6810efgabcab‘ return 2 * a });
常見元字符
字符 | 含義 |
---|---|
. | 查找單個字符,除開換行和行結束符 |
^ | 匹配以xx開頭的字符串(例如^n,匹配以n開頭的字符串) |
$ | 匹配以xx結尾的字符串(n$) |
\b | 匹配單詞的邊界(開始或結束) |
\B | 匹配非單詞的邊界 |
\w | 查找單詞字符(字母、數字、下劃線或漢字)等價範圍[a-zA-Z0-9_] |
\W | 查找非單詞字符(和\w相反,大寫是取反,後面的類似) |
\s | 查找任意的空白字符 等價範圍[ \r\n\f\t\v] |
\S | 查找非空白字符 |
\d | 查找數字 等價範圍[0-9] |
\D | 查找非數字 |
\n | 查找換行符 |
\0 | 匹配空字符 |
匹配數量:
字符 | 含義 |
---|---|
* | 匹配0次或者多次(例如n*,匹配包含0個或多個n的字符串) |
+ | 匹配至少一次 (n+) |
? | 匹配0次或者一次 (n?) |
{n} | 匹配重復n次 (x{n}) |
{n,} | 匹配至少重復n次 |
{n,m} | 匹配重復n到m次 |
經典有關正則表達式例子