Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich alle Vorkommen eines String-Musters in PHP finden?
In PHP kann die preg_match-Funktion verwendet werden, um nach bestimmten Textmustern in Strings zu suchen . Um jedoch mehrere Instanzen desselben Musters zu finden, ist ein etwas anderer Ansatz erforderlich.
Die Lösung liegt in der Verwendung der Funktion preg_match_all() anstelle von preg_match. Diese erweiterte Funktion gibt ein Array zurück, das alle übereinstimmenden Instanzen enthält, die in der Eingabezeichenfolge gefunden wurden, sodass wir deren Anzahl bestimmen können.
Betrachten Sie das folgende Beispiel:
$string = "/brown Fuchs sprang [0-9]/";
$paragraph = "Der Braunfuchs sprang 1 Mal über den Zaun. Dann sprang der Braunfuchs 2 Mal über den Zaun";
if (preg_match_all($string, $paragraph, $matches)) {
echo count($matches[0]) . " Übereinstimmungen gefunden";
} else {
echo "Übereinstimmung NICHT gefunden";
}
In diesem Beispiel wird die Funktion preg_match_all() verwendet, um nach mehreren Vorkommen zu suchen des Musters „/brown fox jumped [0-9]/“ innerhalb des angegebenen Absatzes. Die Funktion gibt ein Array namens $matches zurück, das alle gefundenen Instanzen enthält. Indem wir die Anzahl der Elemente in $matches[0] zählen, können wir die Anzahl der Übereinstimmungen bestimmen.
Beim Ausführen dieses Codes wird Folgendes ausgegeben:
2 Übereinstimmungen gefunden
Dies zeigt, dass das Muster „/brown fox jumped [0-9]/“ zweimal im Absatz vorkommt.
Das obige ist der detaillierte Inhalt vonWie kann ich alle Vorkommen eines String-Musters in PHP finden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!