RegExp.lastMatch ($&)

Veraltet: Diese Funktion wird nicht mehr empfohlen. Obwohl einige Browser sie möglicherweise noch unterstützen, kann sie bereits aus den relevanten Webstandards entfernt worden sein, befindet sich im Prozess der Entfernung oder wird nur aus Kompatibilitätsgründen beibehalten. Vermeiden Sie die Verwendung und aktualisieren Sie gegebenenfalls bestehenden Code; siehe die Kompatibilitätstabelle am Ende dieser Seite, um Ihre Entscheidung zu treffen. Beachten Sie, dass diese Funktion jederzeit nicht mehr funktionieren kann.

Hinweis: Alle RegExp-statischen Eigenschaften, die den letzten Übereinstimmzustand global offenlegen, sind veraltet. Siehe veraltete RegExp-Funktionen für weitere Informationen.

Die statische Zugriffs-Eigenschaft RegExp.lastMatch gibt die zuletzt übereinstimmende Teilzeichenkette 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 wird aktualisiert, wann immer eine RegExp- (aber nicht RegExp-Unterklassen-) Instanz eine erfolgreiche Übereinstimmung erzielt. Wenn keine Übereinstimmungen gefunden wurden, ist lastMatch eine leere Zeichenkette. Der Set-Zugriff von lastMatch ist undefined, daher können Sie diese Eigenschaft nicht direkt ändern.

Sie können den Kurzform-Alias nicht mit dem Punktzugriff (RegExp.$&) verwenden, da & kein gültiger Identifier-Teil ist, was einen SyntaxError verursacht. Verwenden Sie stattdessen die Bracket-Notation.

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

Beispiele

Verwendung von lastMatch und $&

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

Spezifikationen

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

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch