如何在双引号中使用带有双引号的变量?

时间:2019-11-21 10:34:09

标签: javascript regex

我想将“ 3”替换为“ 5”。当使用静态时,它可以正常工作,但是当我通过变量var allvar= '"3"';使用它时,则不能正常工作。

这里是jsfiddle link

1 个答案:

答案 0 :(得分:4)

new RegExp( /[allvar]+/g );将构造一个正则表达式,该正则表达式匹配集合a, l, v, a, r中一个或多个字符的所有不间断序列。

要从变量构造正则表达式,可以执行以下操作:

new RegExp(allvar, 'g')

最好将具有RegExp特殊含义的字符转义,除非您打算让allvar包含regexp源。不幸的是,RegExp.escapestill not in the language,所以有人会使用workaround

new RegExp(escapeRegExp(allvar), 'g')
相关问题