Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Analyse regulärer Ausdrücke, um mehrere Zeilen abzugleichen

PHP-Analyse regulärer Ausdrücke, um mehrere Zeilen abzugleichen

高洛峰
高洛峰Original
2017-02-06 16:35:421367Durchsuche

PHP entspricht der Analyse mehrerer regulärer Ausdrücke. Freunde, die es benötigen, können darauf verweisen. Es wird hauptsächlich zum Sammeln und Ersetzen verwendet.

<table> 
<tr><td>aaaa</td></tr> 
<tr><td>bbbb</td></tr> 
<tr><td>cccc</td></tr> 
<tr><td>dddd</td></tr> 
</table>

Wie kann man Text wie diesen mit regulären PHP-Ausdrücken abgleichen? ?
Mein erster Gedanke:
Muster: „/a34de1251f0d9fe1e645927f19a896e8[.n]*?fd273fcf5bcad3dfdad3c41bd81ad3e5“ (Das ist falsch)
Idee: „kann mit jedem Nicht-For-Zeilenumbruch übereinstimmen.“ Zeichen, verwenden Sie die Kombination „[.n]“, damit alle Zeichen (einschließlich Zeilenumbrüche) übereinstimmen, aber es treten unvorhergesehene Umstände ein – eine Tragödie, das Ergebnis ist nichts!
Nach langem Hin und Her habe ich ein weiteres geschrieben
Muster: „/a34de1251f0d9fe1e645927f19a896e8(.|n)*?fd273fcf5bcad3dfdad3c41bd81ad3e5“ (Das ist möglich)
Ersetzen Sie „[]“ Ersetzen Sie es durch „()“ und verwenden Sie „|“, um eine oder-Auswahl zu treffen, und das war’s (ich bin verwirrt, warum kann „[]“ nicht auch als Auswahlmethode verwendet werden???)
Dort ist auch eine Antwort im Internet:
PATTEN : "/a34de1251f0d9fe1e645927f19a896e8.*?fd273fcf5bcad3dfdad3c41bd81ad3e5/is" (sehr prägnant und praktisch, ich stimme dieser Methode zu)

Postscript: Warum kann „[]“ nicht auch ausgewählt werden? ? ? Wenn Sie davon wissen, vergessen Sie nicht, es mir zu sagen... Das „.“ in

[] ist gleichbedeutend mit…. Bitte lesen Sie die reguläre Beschreibung sorgfältig durch

Erwägen Sie die Verwendung des Mustermodifikators s, wenn es um Zeilenumbrüche geht.

s (PCRE_DOTALL)
Wenn dieser Modifikator festgelegt ist, entspricht das Punkt-Metazeichen im Muster allen Zeichen, einschließlich Zeilenumbrüchen Punkt-Metazeichen stimmt nicht mit Zeilenumbrüchen überein.

[] enthält einige Bereiche oder Kombinationen
lz versuchen Sie es mit „/a34de1251f0d9fe1e645927f19a896e8[.]*?fd273fcf5bcad3dfdad3c41bd81ad3e5/is“ und Sie werden es wissen 🎜>Es gibt auch () Sehr mächtig

Weitere Artikel zur Analyse regulärer Ausdrücke von PHP, die mit mehreren Zeilen übereinstimmen, finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn