Heim  >  Artikel  >  Backend-Entwicklung  >  Regulärer PHP-Ausdruck (regar-Ausdruck)

Regulärer PHP-Ausdruck (regar-Ausdruck)

高洛峰
高洛峰Original
2016-11-30 14:01:29998Durchsuche

Einführung: Beim Schreiben von Programmen oder Webseiten, die Zeichenfolgen verarbeiten, besteht häufig die Notwendigkeit, Zeichenfolgen

zu finden, die bestimmten komplexen Regeln entsprechen. Reguläre Ausdrücke sind die Syntax zur Beschreibung dieser Regeln.
Beispiel: Bei der Beurteilung des E-Mail-Adressformats oder des Mobiltelefonnummernformats oder beim Sammeln des Inhalts der Webseiten anderer Personen
PHP verwendet häufig auch reguläre Ausdrücke: preg_match und ereg .
Ich habe gerade preg_match gesehen. Die spezifische Schreibmethode ist preg_match (Modus, String-Betreff, Array-Übereinstimmungen).
Das Folgende ist ein Beispiel, das ich geschrieben habe. Der Code lautet wie folgt:
< ?php
$mode="/[^8s]/";//Matching module
$str="sssjj88d";//Matching content
echo "


"; 🎜>if (preg_match($mode,$str,$arr)){ //Matching-Funktion
echo „Match erfolgreich“.$arr[0] //$arr[0]: Der erste Wert des Matchings Ergebnismenge
}
else{
echo „match failed“
}

Ergebnis:
Regulärer Ausdruck (regulärer Ausdruck) „Metazeichen“:
* vorher Übereinstimmung mit 0 oder mehr Malen eines Inhalts, d. h. mit allen vorherigen Inhalten. Entspricht 0 Mal, 1 oder mehr Mal dem Inhalt, schließt jedoch keinen Wagenrücklauf und keinen Zeilenvorschub ein Zeiten des vorherigen Inhalts (außer leer).
|. Wählt eine Übereinstimmung ähnlich wie | in PHP aus (da dieser Operator ein schwacher Typ ist, was zu der meisten Übereinstimmung führt).
^ stimmt mit dem ersten Inhalt der Zeichenfolge überein.
$ stimmt mit dem letzten Inhalt der Zeichenfolge überein
{a,b} gibt an, wie oft mit dem vorherigen Inhalt übereinstimmt, was die Häufigkeit von a nach b angibt.
() Führen Sie die Gesamtübereinstimmung zusammen und legen Sie sie im Speicher ab. Sie können 1 2... verwenden, um sie nacheinander zu erhalten.
Das Folgende ist ein Beispiel, das ich in PHP geschrieben habe:
Kopieren Sie den Code. Der Code ist wie folgt:
$mode="/d{2,4}(.*)d{1,2}\1d{1,2}/";//Je einfacher der Abgleich Modul ist im Allgemeinen besser
//$ mode="/2009(.*)9\1(10)/"
$str="2011/9/10"
if( preg_match($mode,$str,$arr)){
echo „Erfolgreiche Übereinstimmung“.“
“.$arr[0].“

< ;font size='+4' color=blue>Happy Teachers' Day";
}
else{
echo "Match fehlgeschlagen";
}
?>

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