Thanks to visit codestin.com
Credit goes to developer.mozilla.org

Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

SyntaxError: ungültiges Zeichen in einer Klasse in regulärem Ausdruck

Die JavaScript-Ausnahme "ungültiges Zeichen in einer Klasse in regulärem Ausdruck" tritt auf, wenn ein Zeichen in einer v-Modus-Zeichenklasse erscheint, das nicht wörtlich auftreten darf.

Meldung

SyntaxError: Invalid regular expression: /[|]/v: Invalid character in character class (V8-based)
SyntaxError: invalid character in class in regular expression (Firefox)
SyntaxError: Invalid regular expression: invalid class set character (Safari)

Fehlertyp

SyntaxError

Was ist schief gelaufen?

Normalerweise können Zeichenklassen fast alle Zeichen wörtlich enthalten. Der v-Modus hat jedoch die Syntax der Zeichenklassen erweitert, und um Platz für zukünftige Syntaxerweiterungen zu lassen, ist es verboten, bestimmte Syntaxzeichen wörtlich in einer Zeichenklasse erscheinen zu lassen. Dazu gehören: (, ), [, ], {, }, /, -, |. Wenn Sie diese Zeichen wörtlich abgleichen möchten, müssen Sie sie escapen; zum Beispiel: /[\|]/v.

Beispiele

Ungültige Fälle

js
/[(){}]/v;

Gültige Fälle

js
/[\(\)\{\}]/v;

Siehe auch