在使用变量时在正则表达式中跳转方括号?
问题描述:
我有这样的代码替换所有开闭方括号这里面有一个匹配的变量:在使用变量时在正则表达式中跳转方括号?
for (var j = 0; j <= temp.length; j++) {
var re = new RegExp("["+j+"]", 'g');
imgData = imgData.replace(re, temp[j]);
}
线var re = new RegExp("["+j+"]", 'g');
不起作用,因为我假设括号不被转义。有谁知道我会如何逃避他们,但仍然能够在模式中有一个变量?谢谢! :)
答
你应该用反斜杠转义:
var re = new RegExp("\\[" + j + "\\]", "g");
啊,我明白了!谢谢。 :) –