使用变量时,在Regex中转义方括号?

时间:2012-11-29 01:43:46

标签: javascript regex replace

我有这个代码来替换所有具有匹配变量的开始和结束方括号:

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');不起作用,因为我认为括号没有被转义。有谁知道我会如何逃避它们,但仍然能够在模式中有一个变量?谢谢! :)

1 个答案:

答案 0 :(得分:10)

你应该用反斜杠来逃避它:

var re = new RegExp("\\[" + j + "\\]", "g");