Skip to content

eslint/no-invalid-regexp Correctness

This rule is turned on by default.

What it does

Disallow invalid regular expression strings in RegExp constructors.

Why is this bad?

An invalid pattern in a regular expression literal is a SyntaxError when the code is parsed, but an invalid string in RegExp constructors throws a SyntaxError only when the code is executed.

Examples

Examples of incorrect code for this rule:

js
RegExp("[");
RegExp(".", "z");
new RegExp("\\");

Examples of correct code for this rule:

js
RegExp(".");
new RegExp();
this.RegExp("[");

How to use

To enable this rule in the CLI or using the config file, you can use:

bash
oxlint --deny no-invalid-regexp
json
{
  "rules": {
    "no-invalid-regexp": "error"
  }
}

References

Released under the MIT License.