如何在Javascript中的regex表达式中包含变量?

时间:2013-01-16 13:11:15

标签: javascript regex variables

  

可能重复:
  Javascript Regex: How to put a variable inside a regular expression?

我在sinon.js fakeServer响应中使用以下内容作为regex pattnern:

/https:\/\/ca-davstorage:8080\/myFile.json(\?.*|$)/

我想用变量替换myFile,但由于我并不擅长正则表达式,所以我很难让它发挥作用。 目前我有这个,但它似乎没有用。

'https:\\/\\/ca-davstorage:8080\\/'+myFile+'.json(\\?.*|$)/'

问题
如何正确地将变量添加到正则表达式?

感谢您的帮助!

1 个答案:

答案 0 :(得分:5)

而不是使用/regex/使用构造函数RegExp

示例

var foo = 'bar',
    re = new RegExp('[0-9]' + foo, 'g');
re.test('1bar'); //true

RegExp构造函数的第一个参数是正则表达式,第二个参数是修饰符。