在新匹配中使用.match输出

时间:2013-02-23 10:45:21

标签: javascript regex variables

var myMatch1 
var myMatch2

是.match的输出。比赛以单词,单词,单词出现

我想用

var newMatch1 = new RegExp(myMatch1, "gi"); 
var newMatch2 = new RegExp(myMatch2, "gi"); 

document.write(newMatch1.exec(newMatch2));

然而,这只会完全匹配。我真的希望表达newMatch1newMatch2(/ word | word | word / gi),(即匹配任何找到的单词)。

我如何编写var newMatch来执行此操作?

编辑:vars myMatch1myMatch2不是数组,从字面上可以找到来自网址的关键字匹配。找到的任何匹配都表示为word1, word2, word3。我需要在另一场比赛中使用这些比赛,因此使用了vars newMatch1newMatch2。我不想在new RegExp中将这些字词表达为word1, word2, word2,它们需要表达为word1|word2|word3

由于

1 个答案:

答案 0 :(得分:0)

您的问题很难理解,但您可以使用字符串连接和RegExp构造函数来构建正则表达式

 var re = new RegExp( myMatch1 + '|' + myMatch2, 'gi' );
 var newMatch = str.match( re );