js正則表達式,最簡要的筆記
1. 正則表達式不用引號,是 RegExp 的簡寫形式,因此 /[0-9]*/ 等同於 new RegExp("[0-9]"),而 /[0-9]*/gmi 等同於 new RegExp("[0-9]", "gmi");
2. 上面的 g/m/i, g 表示全部匹配(否則只返回第1個匹配),m 表示支持多行,i 表示不區分大小寫;
3. 與查找 str.indexOf(keyword) 相對應的正則搜索是 str.search(reg);
4. 替換 str.replace(keyword, newValue) 中的 keyword 支持正則表達式,根據第 1 條,兩種形式都可以;
5. 用 str.replace(new RegExp("[0-9]", "g"), newValue) 可以實現全部替換,相當於 replaceAll;
6. 仍然是替換,第二個參數可以是一個回調函數,用於對匹配到的內容進行加工後返回要替換的新值。
str.replace(new RegExp("wake", "gi"), function(match, pos, originText){
return "<strong>" + match + "</strong>";
})
match 保持了原內容。