We're looking for a user researcher to understand the needs of developers and designers. Is this you or someone you know? Check out the post: https://mzl.la/2IGzdXS

match() gibt zurück, wo ein regulärer Ausdruck in einem String enthalten ist. 

Syntax

str.match(regexp)

Parameter

regexp
Ein regulärer Ausdruck. Falls regexp kein Objekt vom Typ RegExp ist wird es mit Hilfe von new RegExp(obj) konvertiert. Falls dieser Parameter nicht übergeben wird, wird ein Array mit einem leeren String zurückgegben: [""].

Rückgabewert

Es wird ein Array zurückgegeben, das als erstes Element den gesamten übereinstimmenden String enthält, gefolgt von allen weiteren Treffern, die in Klammern angegeben wurden. Falls keine Übereinstimmungen gefunden wurden, wird null zurückgegeben.

Beschreibung

Falls der reguläre Ausdruck nicht den Modifikator g enthält, verhält sich match() wie RegExp.exec(). Im zurückgegebenen Array sind zusätzlich die propertys input und index  enthalten. input ist gleich dem zu durchsuchenden String, index enthält den Index der Übereinstimmung.

Falls der g Modifikator im regulären Ausdruck enthalten ist, wird ein Array mit allen übereinstimmenden Substrings zurückgegeben.

Beispiele

Verwendung von match()

Im folgenden Beispiel wird match() verwendet um 'Kapitel' und anschließend eine oder mehrere Zahlen gefolgt von einem Punkt und einer Zahl 0 oder mehrmals zu finden. Der reguläre Ausdruck enthält den i Modifikator und unterscheidet somit nicht zwischen Groß- und Kleinschreibung.

var str = 'Fuer mehr Informationen siehe Kapitel 3.4.5.1';
var re = /siehe (kapitel \d+(\.\d)*)/i;
var found = str.match(re);

console.log(found);

// gibt folgendes auf der Konsole aus: 
//   [ 'siehe Kapitel 3.4.5.1',
//     'Kapitel 3.4.5.1',
//     '.1',
//     index: 22,
//     input: 'Fuer mehr Informationen siehe Kapitel 3.4.5.1' ]

Verwendung von match() mit den i und g Modifikatoren

Die Buchstaben von A - E und von a - e werden auf der Konsole ausgegeben.

var str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
var regexp = /[A-E]/gi;
var matches_array = str.match(regexp);

console.log(matches_array);
// ['A', 'B', 'C', 'D', 'E', 'a', 'b', 'c', 'd', 'e']

match() ohne Parameter

var str = "Nichts kommt von nichts.";

str.match();
// [""]

Verwendung mit einem nicht regulären Ausdruck

Falls ein String oder eine Zahl anstatt eines regulären Ausdrucks übergeben wird, wird der Parameter in einen regulären Ausdruck konvertiert. Ist es eine positive Zahl mit Vorzeichen, wird das positive Vorzeichen ignoriert.

var str1 = "NaN bedeutet not a number. Infinity enthält -Infinity and +Infinity in JavaScript.",
    str2 = "Zahlen: 1, 6, 3",
    str3 = "null ist ein Datentyp.";

str1.match("number");   // ["number"]
str1.match(NaN);        // ["NaN"]
str1.match(Infinity);   // ["Infinity"]
str1.match(+Infinity);  // ["Infinity"]
str1.match(-Infinity);  // ["-Infinity"]
str2.match(6);          // ["6"]
str2.match(+3);         // ["3"]
str3.match(null);       // ["null"]

Spezifikationen

Spezifikation Status Extras
ECMAScript 3rd Edition (ECMA-262) Standard Anfangsdefinition. Implementiert in JavaScript 1.2.
ECMAScript 5.1 (ECMA-262)
Die Definition von 'String.prototype.match' in dieser Spezifikation.
Standard  
ECMAScript 2015 (6th Edition, ECMA-262)
Die Definition von 'String.prototype.match' in dieser Spezifikation.
Standard  
ECMAScript Latest Draft (ECMA-262)
Die Definition von 'String.prototype.match' in dieser Spezifikation.
Entwurf  

Browser-Kompatibilität

Wir konvertieren die Kompatibilitätsdaten in ein maschinenlesbares JSON Format. Diese Kompatibilitätstabelle liegt noch im alten Format vor, denn die darin enthaltenen Daten wurden noch nicht konvertiert. Finde heraus wie du helfen kannst!

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Grundlegende Unterstützung (Ja) (Ja) (Ja) (Ja) (Ja)
Feature Android Chrome für Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Grundlegende Unterstützung (Ja) (Ja) (Ja) (Ja) (Ja) (Ja)

Siehe auch

Schlagwörter des Dokuments und Mitwirkende

Mitwirkende an dieser Seite: d4rkne55, Tosch110, afoeder, tobiasherber
Zuletzt aktualisiert von: d4rkne55,