function replaceAll(str, find, replace) {
return str.replace(new RegExp(find, 'g'), replace);
}
var data = ':['
data = replaceAll(data, ':\[', "/\\");
返回错误: 无效的正则表达式:/:[/:未终止的字符类
我看过其他与此有关的帖子是为了逃避'[',但我已经这样做了,但它不起作用。
显然我在这里做错了,我对RegEx的事情并不熟悉,所以有人帮忙吗?
答案 0 :(得分:2)
更改您的输入,如下所示
data = replaceAll(data, ':\\[', "/\\");
将它放在RegExp
构造函数中时,需要再次转义反斜杠。
答案 1 :(得分:2)
你需要加倍转义,因为\
也是Javascript文字中的转义:
data = replaceAll(data, ':\\[', "/\\");