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 保持了原内容。