JavaScript如何在正则表达式中使用变量?

我想String.replaceAll()JavaScript中创建一个方法,并且我认为使用正则表达式是最简洁的方法。但是,我不知道如何将变量传递给正则表达式。我能做到这一点已经将取代所有的实例"B""A"

"ABABAB".replace(/B/g, "A");

但是我想做这样的事情:

String.prototype.replaceAll = function(replaceThis, withThis) {

this.replace(/replaceThis/g, withThis);

};

但是显然这只会替换文本"replaceThis"…所以如何将这个变量传递给我的正则表达式字符串?

回答:

代替使用/regex/g语法,可以构造一个新的RegExp对象:

var replace = "regex";

var re = new RegExp(replace,"g");

您可以通过这种方式动态创建正则表达式对象。然后,您将执行以下操作:

"mystring".replace(re, "newstring");

以上是 JavaScript如何在正则表达式中使用变量? 的全部内容, 来源链接: utcz.com/qa/435919.html

回到顶部