Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann ich meine regulären PHP-ereg-Ausdrücke einfach in PCRE konvertieren?

Wie kann ich meine regulären PHP-ereg-Ausdrücke einfach in PCRE konvertieren?

Patricia Arquette
Freigeben: 2025-01-03 21:53:42
Original
684 Leute haben es durchsucht

How Can I Easily Convert My PHP ereg Regular Expressions to PCRE?

PCRE-Ausdrücke mit PHP konvertieren

Reguläre POSIX-Ausdrücke (ereg) werden in PHP 5.3.0 und höher nicht mehr empfohlen. Dieser Artikel bietet eine einfache Möglichkeit, alte Ereg-Ausdrücke in Perl-kompatible reguläre Ausdrücke (PCRE oder Preg) zu konvertieren, die weiterhin unterstützt werden.

Syntaxänderungen

Der Hauptunterschied Zu beachten ist das Hinzufügen von Trennzeichen in preg. Sie verhindern Kollisionen mit Zeichen innerhalb des Ausdrucks. Zu den gängigen Trennzeichen gehören ~, / und #.

Escape-Trennzeichen

Wenn das Trennzeichen innerhalb des Ausdrucks vorkommt, muss es maskiert werden. Beispielsweise erfordert ein Ausdruck, der einen Schrägstrich enthält, ein Escapezeichen:

preg_match('/^\/hello/', $str);
Nach dem Login kopieren

Verwendung von preg_quote

Um sicherzustellen, dass Escapezeichen ordnungsgemäß hinzugefügt werden, verwenden Sie die Funktion preg_quote. Es entgeht allen Trennzeichen und reservierten Zeichen:

$expr = preg_quote('/hello', '/');
preg_match('/^'.$expr.'/', $str);
Nach dem Login kopieren

Groß-/Kleinschreibung wird nicht berücksichtigt

Der i-Modifikator ermöglicht eine Übereinstimmung ohne Berücksichtigung der Groß- und Kleinschreibung wie eregi:

preg_match('/^hello/i', 'HELLO');
Nach dem Login kopieren

Referenzhandbuch

Für eine umfassende Referenz zu PCRE Informationen zur Syntax in PHP finden Sie im offiziellen Handbuch. Darüber hinaus enthält das Handbuch eine Aufschlüsselung der Unterschiede zwischen POSIX- und PCRE-Regex, die den Konvertierungsprozess unterstützt.

Einfachere Alternative für einfache Ausdrücke

Im bereitgestellten Beispiel ( passend zu „Hallo Welt“ am Anfang einer Zeichenfolge), könnte ein regulärer Ausdruck unnötig sein:

stripos($str, 'hello world') === 0
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich meine regulären PHP-ereg-Ausdrücke einfach in PCRE konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage