The "extends": "eslint:recommended"
property in a configuration file enables this rule.
Because empty character classes in regular expressions do not match anything, they might be typing mistakes.
var foo = /^abc[]/;
This rule disallows empty character classes in regular expressions.
Examples of incorrect code for this rule:
/*eslint no-empty-character-class: "error"*/ /^abc[]/.test("abcdefg"); // false "abcdefg".match(/^abc[]/); // null
Examples of correct code for this rule:
/*eslint no-empty-character-class: "error"*/ /^abc/.test("abcdefg"); // true "abcdefg".match(/^abc/); // ["abc"] /^abc[a-z]/.test("abcdefg"); // true "abcdefg".match(/^abc[a-z]/); // ["abcd"]
This rule does not report empty character classes in the string argument of calls to the RegExp
constructor.
Example of a false negative when this rule reports correct code:
/*eslint no-empty-character-class: "error"*/ var abcNeverMatches = new RegExp("^abc[]");
This rule was introduced in ESLint 0.22.0.
© JS Foundation and other contributors
Licensed under the MIT License.
https://eslint.org/docs/rules/no-empty-character-class