Heim  >  Artikel  >  Backend-Entwicklung  >  Erweiterte POSIX-Funktionen für reguläre Ausdrücke

Erweiterte POSIX-Funktionen für reguläre Ausdrücke

巴扎黑
巴扎黑Original
2017-04-25 13:59:261945Durchsuche

Das Finden von Zeichenfolgen ist die Hauptanwendung regulärer Ausdrücke. In PHP sind zwei Funktionen verfügbar und werden verwendet, um reguläre Ausdrücke im POSIX-Stil abzugleichen: die Funktion ereg() und die Funktion eregi().

ereg()-Funktion und eregi()-Funktion

Das Funktionssyntaxformat ist wie folgt:

int ereg( Zeichenfolgenmuster, Zeichenfolgensuche, Array[Übereinstimmungen]);

Funktionsfunktion: Diese Funktion durchsucht die Zeichenfolgensuche und findet eine Zeichenfolge im Muster, die dem regulären Ausdruck entspricht. Wenn Zeichenfolgen gefunden werden, die mit den Unterausdrücken von „pattern“ übereinstimmen, werden diese Zeichenfolgen im Übereinstimmungs-Array gespeichert, wobei jedes Array-Element einem Unterausdruck entspricht.

Funktion Die Funktion eregi() hat die gleichen Funktionen wie die Funktion ereg(), außer dass die Groß-/Kleinschreibung nicht beachtet wird.

Ein Beispiel zeigt die Verwendung der Funktion ereg(), um zu überprüfen, ob die Variable zulässig ist:

<?php
header("content-type:text/html;charset=utf-8");
$ereg = &#39;^[$][[:alpha:]__][[:alnum:]]*&#39;;
ereg($ereg,&#39;$_name&#39;,$register);
var_dump($register);
?>

Hinweis: ereg ist in der neuen Version von PHP veraltet und wurde durch ersetzt preg_match().

ereg_replace() und eregi_replace()

Das Funktionssyntaxformat ist wie folgt:

string ereg_replace/ereg_replace( string pattern, string replacement, string string)

Funktion: Passen Sie das Ausdrucksmuster in der Zeichenersetzungszeichenfolge an. Wenn die Übereinstimmung erfolgreich ist, verwenden Sie replacement, um die übereinstimmende Zeichenfolge zu ersetzen und die zurückzugeben Zeichenfolge ersetzt. Wenn in der Zeichenfolge keine Übereinstimmung gefunden wird, wird die Zeichenfolge unverändert zurückgegeben. Bei eregi_replace() wird die Groß-/Kleinschreibung nicht beachtet.

Ein Beispiel zeigt, wie alle nicht-großgeschriebenen TMs in einer Zeichenfolge durch großgeschriebene TMs ersetzt werden:

<?php
header("content-type:text/html;charset=utf-8");
$ereg = &#39;tm&#39;;
$str = &#39;hello ,tm,Tm,tM&#39;;
$rep_str = eregi_replace($ereg,&#39;TM&#39;,$str);
echo $rep_str;

Hinweis: In der neuen Version wird eregi_replace() durch preg_replace() ersetzt.

Das obige ist der detaillierte Inhalt vonErweiterte POSIX-Funktionen für reguläre Ausdrücke. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen 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