preg Übereinstimmungsanzahl stimmt überein

9

Ich habe eine Preg-Match-Anweisung und es wird nach Übereinstimmungen gesucht, aber ich habe mich gefragt, wie Sie die Matches zählen können. Jeder Rat geschätzt.

%Vor%

zum Beispiel sollte eine Zählung dieser Nachrichtenfolge zu 2 Übereinstimmungen führen

    
Scarface 17.06.2010, 17:38
quelle

4 Antworten

20
%Vor%

gibt 2 . Beachten Sie, dass Sie \b nicht verwenden können, weil die Wortgrenze vor ] und nicht nach.

liegt

Siehe preg_match_all .

    
Artefacto 17.06.2010, 17:44
quelle
5

preg_match gibt bereits die Anzahl der Übereinstimmungen des Musters zurück.

Dies ist jedoch nur 0 oder 1, da es nach dem ersten Spiel anhält. Sie können stattdessen preg_match_all verwenden, da dies die gesamte Zeichenfolge überprüft und den Gesamtwert zurückgibt Anzahl der Übereinstimmungen.

    
webbiedave 17.06.2010 17:43
quelle
3

Sie sollten preg_match_all verwenden, wenn Sie alle Vorkommen abgleichen möchten. preg_match_all gibt die Anzahl der Übereinstimmungen zurück. preg_match gibt nur 0 oder 1 zurück, weil es nur einmal übereinstimmt.

    
Matěj G. 17.06.2010 17:44
quelle
3

Ich denke, Sie brauchen preg_match_all . Es gibt die Anzahl der Übereinstimmungen zurück, die es findet. preg_match stoppt nach dem ersten.

    
Manos Dilaverakis 17.06.2010 17:45
quelle

Tags und Links