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 statischen Eigenschaften von RegExp, die den letzten Übereinstimmungszustand global exponieren, sind veraltet. Weitere Informationen finden Sie unter veraltete RegExp-Features.

Die statische Zugriffseigenschaft 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 eine Eigenschaft eines von Ihnen erstellten RegExp-Objekts.

Der Wert von lastMatch wird jedes Mal aktualisiert, wenn eine RegExp-Instanz (aber nicht eine RegExp-Unterklasse) eine erfolgreiche Übereinstimmung erzielt. Wenn keine Übereinstimmungen erzielt wurden, ist lastMatch ein leerer String. 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-Eigenschaft-Zugriffsoperator (RegExp.$&) verwenden, da & kein gültiger Identifikator-Teil ist, was zu einem SyntaxError führt. Verwenden Sie stattdessen die Klammernotation.

$& kann auch im Ersetzungsstring von String.prototype.replace() verwendet werden, aber das steht in keinem Zusammenhang mit der veralteten RegExp["$&"]-Eigenschaft.

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