将变量插入JavaScript String.Match正则表达式

时间:2018-10-17 16:01:51

标签: javascript regex match

我需要提取给定单词和点(。)第一次出现之间的字符串。

以下代码可以正常工作,并提取单词“ located”第一次出现和“。”第一次出现之间的字符串。在这种情况下,它将产生答案:“ 在加拿大”。

var myStr = "Toronto is located in Canada. And located in USA.";
var matches = myStr.match(/\located(.*?)\./);
var str = matches && matches.length ? matches[1] : '';
alert(str);

但是我需要能够提供给定单词作为变量并将其插入String.Match正则表达式中。

我已经尝试过了:

var myStr = "Toronto is located in Canada. And located in USA.";
var test = "located";
var regex = new RegExp("/\"" + test + "(.*?)\./");
var matches = myStr.match(regex);
var str = matches && matches.length ? matches[1] : '';

alert(str);

但是它不起作用。我在做什么错了?

0 个答案:

没有答案