Javascript 带括号的正则表达式测试

Javascript 带括号的正则表达式测试,javascript,jquery,regex,Javascript,Jquery,Regex,我有这样的代码: var value = "Mary Jane (Asistant)"; var regex = new RegExp(value); regex.test("Some String to Test"); 我想测试我的正则表达式。当我使用闭括号时,它会工作。但当我测试“Mary Jane(Asistant)”的示例值时,它会抛出错误 无效的正则表达式:/Mary Jane(Asistant/:未终止的组 如何消除此错误?试试这个 var value=“Mary J

我有这样的代码:

  var value = "Mary Jane (Asistant)";
  var regex = new RegExp(value);
  regex.test("Some String to Test");
我想测试我的正则表达式。当我使用闭括号时,它会工作。但当我测试“Mary Jane(Asistant)”的示例值时,它会抛出错误

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

如何消除此错误?

试试这个

var value=“Mary Jane\\(Asistant\\)”;
var regex=新的RegExp(值);
log(regex.test(“一些要测试的字符串”);
log(regex.test(“Mary Jane(Asistant)”);
试试这个

var value=“Mary Jane\\(Asistant\\)”;
var regex=新的RegExp(值);
log(regex.test(“一些要测试的字符串”);

console.log(regex.test(“Mary Jane(Asistant)”);
您自己提到了解决方案:关闭组。除非您想匹配文字括号。那么您必须转义文字字符串以用作regex模式的一部分。您需要转义元字符,如
()
,使用
\
尝试
\(
而不仅仅是
我建议您在regex101.com这样的实时预览网站上测试您的正则表达式,在那里您会收到详细的错误消息。您自己会提到解决方案:关闭组。除非您想匹配文字括号。然后您必须转义文字字符串以用作正则表达式模式的一部分。您需要转义元字符,如
()
使用
\
尝试
\(
而不仅仅是
)(
我建议您在像regex101.com这样的实时预览站点上测试您的正则表达式,在那里您可以得到详细的错误消息