Heim >Backend-Entwicklung >PHP-Tutorial >Wie migriere ich meinen PHP-Code von „ereg' zu „preg' regulären Ausdrücken?
Migration von EReg zu PREG in PHP
Seit PHP 5.3.0 sind reguläre POSIX-Ausdrücke (ereg) veraltet, was die Einführung erforderlich macht von Perl-kompatiblen regulären Ausdrücken (preg). Dieser Übergang erfordert Änderungen an vorhandenen Ereg-Ausdrücken, um die Kompatibilität mit preg_match zu gewährleisten.
Syntaxunterschiede
Die wichtigste syntaktische Änderung besteht im Hinzufügen von Trennzeichen zu den Ausdrücken. Im Gegensatz zu Ereg erfordert Preg Trennzeichen vor und nach dem regulären Ausdruck. Trennzeichen können Zeichen wie ~, / oder # oder sogar passende Klammern (z. B. [], (), {}) sein.
preg_match('/^hello/', $str); // Using '/' as a delimiter preg_match('[^hello]', $str); // Using square brackets as a delimiter
Escape-Trennzeichen
Wenn das ausgewählte Trennzeichen im regulären Ausdruck vorkommt, maskieren Sie es mit einem Backslash ().
preg_match('/^\/hello/', $str);
Verwendung von preg_quote
Um alle Trennzeichen und reservierten Zeichen umfassend zu maskieren, verwenden Sie preg_quote:
$expr = preg_quote('/hello', '/'); preg_match('/^'.$expr.'/', $str);
Abgleich ohne Berücksichtigung der Groß- und Kleinschreibung
Um einen Abgleich ohne Berücksichtigung der Groß- und Kleinschreibung durchzuführen, verwenden Sie der i-Modifikator:
preg_match('/^hello/i', $str);
Konvertieren des gegebenen Beispiels
Das bereitgestellte Beispiel, eregi('^hello world'), sollte nicht in preg_match konvertiert werden, da es kann mit der Stripos-Funktion vereinfacht werden:
stripos($str, 'hello world') === 0
Das obige ist der detaillierte Inhalt vonWie migriere ich meinen PHP-Code von „ereg' zu „preg' regulären Ausdrücken?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!