用括号进行正则表达式测试

时间:2019-02-05 13:03:12

标签: javascript jquery regex

我有这样的代码:

  var value = "Mary Jane (Asistant)";
  var regex = new RegExp(value);
  regex.test("Some String to Test");

我想测试我的正则表达式。当我用括号括起来时,它可以工作。但是当我测试“ Mary Jane(Asistant)”的值时,它将抛出错误。

无效的正则表达式:/ Mary Jane(助理/:未终止的组。

如何摆脱这个错误?

1 个答案:

答案 0 :(得分:0)

尝试一下

var value = "Mary Jane \\(Asistant\\)";
var regex = new RegExp(value);

console.log(regex.test("Some String to Test"));
console.log(regex.test("Mary Jane (Asistant)"));

或这个

var value = /Mary Jane \(Asistant\)/;
var regex = new RegExp(value);

console.log(regex.test("Some String to Test"));
console.log(regex.test("Mary Jane (Asistant)"));

请记住,value包含正则表达式模式,并且某些字符(如括号())具有特殊含义,需要像上面的摘要中一样进行转义。