通常替换全部匹配字符串的做法是:var str="test";
var regS = new RegExp(str,"gi");
alert(s.replace(regS,"test-test-test")); //全部替换但是如果str变量中含有{[等特殊字符,怎么办?高手赐教!
var regS = new RegExp(str,"gi");
alert(s.replace(regS,"test-test-test")); //全部替换但是如果str变量中含有{[等特殊字符,怎么办?高手赐教!
var regS = new RegExp(str.replace(/[(){}.+*?^$|\\\[\]]/g, "\\$&"), "gi");
var s = "[test]-[test}-{test}";
alert(s.replace(regS, "zswang 路过!")); //全部替换
谢谢,str.replace(/[(){}.+*?^$|\\\[\]]/g, "\\$&")中的\\$&是什么意思?
var str="[test}";
var regS = new RegExp(str.replace(/[(){}.+*?^$|\\\[\]]/g, "\\$&"), "gi");
var s = "[test]-[test}-{test}";
alert(s.replace(regS, "zswang 路过!")); //全部替换 这个用法非常好,但是也有缺点,就是让人不容易看懂!哈哈!
$1匹配的第一组
$2匹配的第二组