使用字符串变量作为正则表达式

时间:2011-01-24 20:46:43

标签: javascript regex

在JavaScript中,我们将/g附加到不带引号的字符串以表示正则表达式。

如果我在变量中有一个字符串并想将它用作正则表达式怎么办?

这可能吗?如果是这样,有人能告诉我一些示例代码吗?

感谢。

3 个答案:

答案 0 :(得分:6)

使用此:

new RegExp("your regex here", "modifiers");

请注意/g不是正则表达式的分隔符,它是全局修饰符。正则表达式如下所示:/your regex here/modifiersmodifiers可以是gim的组合。这些都在这里解释:http://www.regular-expressions.info/javascript.html

答案 1 :(得分:5)

/g是一个表示全局的标志(匹配正则表达式的所有实例),它不表示正则表达式,而只是一个标志。

如果您想使用动态正则表达式new RegExp。用法:https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/RegExp

答案 2 :(得分:1)

谢谢,加比,你帮了很多忙。但是,我必须将regexp部分(变量部分)放在没有引号的情况下才能使它工作:

new RegExp(yourRegExp, "modifiers").

我希望这有助于某人。