Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.
Die match() Methode von String Werten ruft das Ergebnis des Abgleichs dieses Strings mit einem regulären Ausdruck ab.
Ein reguläres Ausdrucksobjekt oder ein beliebiges Objekt, das eine Symbol.match Methode hat.
Wenn regexp kein RegExp Objekt ist und keine Symbol.match Methode hat, wird es implizit zu einem RegExp konvertiert, indem new RegExp(regexp) verwendet wird.
Wenn Sie keinen Parameter angeben und die match() Methode direkt verwenden, erhalten Sie ein Array mit einem leeren String: [""], da dies gleichbedeutend ist mit match(/(?:)/).
Ein Array, dessen Inhalt von der Anwesenheit oder Abwesenheit des globalen (g) Flags abhängt, oder null, wenn keine Übereinstimmungen gefunden werden.
Die Implementierung von String.prototype.match tut nicht viel anderes, als die Symbol.match Methode des Arguments mit dem String als erstem Parameter aufzurufen. Die tatsächliche Implementierung stammt von RegExp.prototype[Symbol.match]().
Für weitere Informationen über die Semantik von match(), wenn ein Regex übergeben wird, siehe RegExp.prototype[Symbol.match]().
Im folgenden Beispiel wird match() verwendet, um "Chapter" zu finden, gefolgt von einem oder mehreren numerischen Zeichen, gefolgt von einem Dezimalpunkt und numerischen Zeichen null oder mehrmals.
Der reguläre Ausdruck enthält das i Flag, sodass Unterschiede zwischen Groß- und Kleinschreibung ignoriert werden.
Im obigen Match-Ergebnis ist 'see Chapter 3.4.5.1' das gesamte Match. 'Chapter 3.4.5.1' wurde von (chapter \d+(\.\d)*) erfasst. '.1' war der letzte Wert, der von (\.\d) erfasst wurde. Die index Eigenschaft (22) ist der nullbasierte Index des gesamten Matchs. Die input Eigenschaft ist der ursprüngliche String, der analysiert wurde.
Das folgende Beispiel demonstriert die Verwendung des globalen Flags und des ignore-case Flags mit match(). Alle Buchstaben A bis E und a bis e werden zurückgegeben, jeder ein eigenes Element im Array.
Hinweis: Siehe auch String.prototype.matchAll() und Erweitertes Suchen mit Flags.
In Browsern, die benannte Erfassungsgruppen unterstützen, erfasst der folgende Code "fox" oder "cat" in eine Gruppe namens animal:
Wenn ein Objekt eine Symbol.match Methode hat, kann es als benutzerdefinierter Matcher verwendet werden. Der Rückgabewert von Symbol.match wird dann zum Rückgabewert von match().
Wenn der regexp Parameter ein String oder eine Zahl ist, wird es implizit zu einem RegExp konvertiert, indem new RegExp(regexp) verwendet wird.
Dies kann unerwartete Ergebnisse haben, wenn Sonderzeichen nicht ordnungsgemäß maskiert sind.
Dies ist eine Übereinstimmung, weil . in einem Regex jedes Zeichen erfasst. Um nur einen Punkt zu erfassen, müssen Sie die Eingabe escapen.
| ECMAScript® 2027 Language Specification # sec-string.prototype.match |
JavaScript aktivieren, um diese Browser-Kompatibilitätstabelle anzuzeigen.
Der Bauplan für ein besseres Internet.
Besuche die gemeinnützige Muttergesellschaft der Mozilla Corporation, die Mozilla Foundation.
Teile dieses Inhalts sind ©1998–2026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfügbar unter einer Creative-Commons-Lizenz.