2

I have code like this:

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

I want to test my regex.It works when I have closed parentheses.But when I test for example value of "Mary Jane (Asistant" it throws error.

Invalid regular expression: /Mary Jane (Asistant/: Unterminated group.

How can I get rid of this error?

javauser35
  • 1,177
  • 2
  • 14
  • 34

1 Answers1

0

Try this

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)"));

or this

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)"));

remember that value contains regular expression pattern and some characters like parenthesis ( and ) has special meaning and need to be escaped like in snippets above.

Kamil Kiełczewski
  • 85,173
  • 29
  • 368
  • 345