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

View in English Always switch to English

RegExp.lastMatch ($&)

Deprecated

Avoid using this feature in new projects. The RegExp static properties may have unintended side effects. This feature may be a candidate for removal from web standards or browsers.

Hinweis: Alle RegExp-statischen Eigenschaften, die den letzten Übereinstimmungsstatus global freigeben, sind veraltet. Weitere Informationen finden Sie unter veraltete RegExp-Funktionen.

Die statische Zugriffs-Eigenschaft RegExp.lastMatch gibt die zuletzt übereinstimmende Teilzeichenfolge zurück. RegExp["$&"] ist ein Alias für diese Eigenschaft.

Beschreibung

Da lastMatch eine statische Eigenschaft von RegExp ist, verwenden Sie sie immer als RegExp.lastMatch oder RegExp["$&"], anstatt als Eigenschaft eines von Ihnen erstellten RegExp-Objekts.

Der Wert von lastMatch aktualisiert sich, wann immer eine RegExp-Instanz (aber keine RegExp-Unterklasse) einen erfolgreichen Abgleich durchführt. Wenn keine Übereinstimmungen gefunden wurden, ist lastMatch eine leere Zeichenfolge. Der Set-Accessor von lastMatch ist undefined, daher können Sie diese Eigenschaft nicht direkt ändern.

Sie können den Kurzform-Alias nicht mit dem Punkt-Zugriffsoperator verwenden (RegExp.$&), da & kein gültiger Bezeichnerteil ist, was zu einem SyntaxError führt. Verwenden Sie stattdessen die Klammernotation.

$& kann auch in der Ersetzungszeichenfolge von String.prototype.replace() verwendet werden, aber das ist nicht mit der RegExp["$&"] Legacy-Eigenschaft verbunden.

Beispiele

Verwendung von lastMatch und $&

js
const re = /hi/g;
re.test("hi there!");
RegExp.lastMatch; // "hi"
RegExp["$&"]; // "hi"

Spezifikationen

Spezifikation
Legacy RegExp features
# additional-properties-of-the-regexp-constructor

Browser-Kompatibilität

Siehe auch