Avoid empty character classes in regular expressions

このページは日本語には対応しておりません。随時翻訳に取り組んでいます。翻訳に関してご質問やご意見ございましたら、お気軽にご連絡ください。

Metadata

ID: javascript-best-practices/no-empty-character-class

Language: JavaScript

Severity: Error

Category: Best Practices

Description

In regular expressions, empty character classes do not match anything, and were likely used in error.

Non-Compliant Code Examples

var foo = /^abc[]/;
var foo = /foo[]bar/;
if (foo.match(/^abc[]/)) {}
if (/^abc[]/.test(foo)) {}
var foo = /[]]/;
var foo = /\[[]/;
var foo = /\\[\\[\\]a-z[]/;
var foo = /[]]/d;

Compliant Code Examples

var foo = /^abc[a-zA-Z]/;
var regExp = new RegExp("^abc[]");
var foo = /^abc/;
var foo = /[\\[]/;
var foo = /[\\]]/;
var foo = /[a-zA-Z\\[]/;
var foo = /[[]/;
var foo = /[\\[a-z[]]/;
var foo = /[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\^\\$\\|]/g;
var foo = /\\s*:\\s*/gim;
var foo = /[\\]]/uy;
var foo = /[\\]]/s;
var foo = /[\\]]/d;
var foo = /\[]/
https://static.datadoghq.com/static/images/logos/github_avatar.svg https://static.datadoghq.com/static/images/logos/vscode_avatar.svg jetbrains

Seamless integrations. Try Datadog Code Analysis