Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
SyntaxError: nothing to repeat
Der JavaScript-Ausnahmefehler "nothing to repeat" oder "invalid quantifier in regular expression" tritt auf, wenn einQuantifier in einem regulären Ausdruck auf nichts angewendet wird oder auf eineAssertion angewendet wird.
In diesem Artikel
Nachricht
SyntaxError: Invalid regular expression: /\b+/: Nothing to repeat (V8-based)SyntaxError: Invalid regular expression: /(?=)+/u: Invalid quantifier (V8-based)SyntaxError: nothing to repeat (Firefox)SyntaxError: invalid quantifier in regular expression (Firefox)SyntaxError: Invalid regular expression: nothing to repeat (Safari)
Fehlertyp
SyntaxErrorWas ist schiefgelaufen?
Quantifiers werden verwendet, um anzugeben, wie oft ein Zeichen oder eine Gruppe von Zeichen in einem regulären Ausdruck erscheinen kann. Zum Beispiel,a{3} entspricht dem Zeichena genau dreimal. Daher ist der Quantifier ungültig, wenn das, was dem Quantifier vorausgeht, nichts ist, das Zeichen entspricht. Zum Beispiel: Quantifiers am Anfang einercapturing group, am Anfang einerdisjunction alternative, usw., können nichts wiederholen.Assertions verbrauchen keine Zeichen, daher macht es auch keinen Sinn, sie zu wiederholen.
ImUnicode-unaware mode gibt es eine veraltete Syntax, die es erlaubt, dielookahead assertions zu quantifizieren. Dies ist eine veraltete Syntax und Sie sollten sich nicht darauf verlassen.
Beispiele
>Ungültige Fälle
/\b+/; // \b is a word boundary assertion, it doesn't consume characters/(*hello*)/;Gültige Fälle
/b+/; // b is a character, it can be repeated/(\*hello\*)/; // Escape the asterisks to match them literally