如何合并多个正则表达式

时间:2019-09-05 16:42:49

标签: javascript regex

我想组合多个正则表达式值。例如:[/ Harry /,/ Potter /]的/ Harry /和/ Potter /。我想通过这是在mongoDB函数中。

我已经尝试过了:

reg =新RegExp(reg +','+新RegExp(words [i]));

但是搞砸了

我正在输入一个数组单词= [“ Harry”,“ Potter”,“ Killer”]; 我希望它在正则表达式中看起来像这样:[/ Harry /,/ Potter /,/ Killer /]

var reg = '[ ' +new RegExp(words[0]);
    for (i = 1; i < words.length; i++) {
            reg = new RegExp(reg + ',' + new RegExp(words[i]));
    }
    reg = reg + ' ]';

1 个答案:

答案 0 :(得分:-1)

您正在寻找Array.map。您需要做的就是将words映射到RegExp对象中,如下所示:

const words = ["Harry", "Potter", "Killer"];
const regex = words.map(e=>new RegExp(e)); // [/Harry/, /Potter/, /Killer/]

希望这会有所帮助!