在JavaScript中,我们将/g
附加到不带引号的字符串以表示正则表达式。
如果我在变量中有一个字符串并想将它用作正则表达式怎么办?
这可能吗?如果是这样,有人能告诉我一些示例代码吗?
感谢。
答案 0 :(得分:6)
使用此:
new RegExp("your regex here", "modifiers");
请注意/g
不是正则表达式的分隔符,它是全局修饰符。正则表达式如下所示:/your regex here/modifiers
。 modifiers
可以是g
,i
和m
的组合。这些都在这里解释: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").
我希望这有助于某人。