So maskieren Sie reguläre Sonderzeichen in PHP: Erstellen Sie zunächst eine PHP-Beispieldatei. Definieren Sie dann eine Zeichenfolge, um die Sonderzeichen schließlich durch Backslashes zu maskieren, und analysieren Sie die Variablen.
Empfohlen: „PHP-Video-Tutorial“
Ich habe kürzlich PHP-reguläre Ausdrücke verwendet und bin beim Schreiben von Ausdruckszeichenfolgen auf einige Probleme gestoßen. Ich weiß jetzt nicht, wann ich Backslash „“ verwenden muss für etwas Sortierung.
Es gibt 4 Möglichkeiten, PHP-Strings zu definieren:
Zeichen definieren Als Zeichenfolge etwas Besonderes Zeichen werden mit Escapezeichen versehen und Variablen werden analysiert.
Zu den Sonderzeichen gehören:
item | content | note |
linefeed | n | LF oder 0x0A |
carriage return | r | CR oder 0x0D |
Ebene Tabulatorzeichen | t | HT oder 0x09 |
Vertikales Tabulatorzeichen | v | VT oder 0x0B |
Seitenwechsel | f | FF oder 0x0C |
Backslash | \ | |
Dollarzeichen | $ | |
doppelte Anführungszeichen | " | |
einfache Anführungszeichen | ' | |
Oktale Zeichen | [0-7 ]{1,3 } | |
Hexadezimale Zeichen | x[0-9A-Fa-f]{1,2} |
Weitere Informationen zu diesem Teil finden Sie im PHP-Handbuch:
Entfernen Sie in einfachen Anführungszeichen (') und Backslash () und geben Sie die ursprüngliche Bedeutung anderer Zeichen aus, außer doppelten Anführungszeichen Die Sonderzeichen von Anführungszeichen (") werden mit Escapezeichen versehen und die Variablen werden analysiert.
Daher wird in diesen beiden allgemeinen Zeichenfolgendefinitionen der Backslash () immer mit Escapezeichen versehen.
PHP-regulärer Ausdruck
One wird von der PCRE-Bibliothek (Perl Compatible Regular Expression) mit Funktionen bereitgestellt, die mit dem Präfix „preg_“ benannt sind.
One wird von der POSIX-Erweiterung (Portable Operating System Interface of Unix) bereitgestellt. PHP-Standard: Verwenden Sie Funktionen mit dem Präfix „ereg_“.
Reguläre Ausdrücke stellen Matching-, Ersetzungs- und Segmentierungsfunktionen bereit.
Derzeit werden nur reguläre Ausdrücke im Perl-Stil verwendet .
Reguläre Ausdrücke im Perl-Stil müssen wie folgt in Trennzeichen („/“ oder „#“) eingefügt werden: [Referenz]
$str = 'http://www.youku.com/show_page/id_ABCDEFG.html'; $regex = '/^http:\/\/([\w.]+)\/([\w]+)\/([\w]+)\.html$/i'; $regex = '#^http://([\w.]+)/([\w]+)/([\w]+)\.html$#i';
Um eine URL zu teilen, definiert die Variable $regex eine Zeichenfolge mit regulären Ausdrücken :
^http://([w.]+)/([w]+)/([w]+).html$
Diese Zeichenfolge enthält einige Sonderzeichen, wie „/“ und „.“ , die wie folgt maskiert und mit einem Backslash ("") im Perl-Stil definiert werden müssen:
^http://([ w.]+)/([w]+)/([w]+). html$
Gleichzeitig muss diese Zeichenfolge im Trennzeichen enthalten sein, daher gibt es die beiden oben genannten Arten von Ausdrücken; „#“ ist das Trennzeichen und es besteht keine Notwendigkeit, das „/“ zu maskieren
Escape für reguläre AusdrückeWenn Sie in regulären Ausdrücken die folgenden einzelnen Zeichen abgleichen möchten, müssen Sie zum Escape einen Backslash (" ") verwenden: "", "?", "*", "^", „$“, „+“, „(“, „)“, „|“, „{“, „[“ In regulären Ausdrücken im Perl-Stil, wenn Sie mit dem folgenden einzelnen Zeichen oder einem einzelnen Zeichen übereinstimmen nicht mit dem oben übereinstimmenden Wert übereinstimmt, müssen Sie ihn auch mit einem Backslash ("") maskieren: ^=}]/:<> ;.'"ZusammenfassungUm eine korrekte Zeichenfolge für reguläre Ausdrücke im Perl-Stil zu schreiben, sind drei Schritte erforderlich sind erforderlich:Schreiben Sie den richtigen regulären Ausdruck, achten Sie auf das Escapezeichen von Sonderzeichen.Fügen Sie Trennzeichen ein und maskieren Sie es mithilfe von Escaperegeln im Perl-Stil.Escapen Sie den Inhalt der obigen Zeichenfolge gemäß der PHP-StringdefinitionDas obige ist der detaillierte Inhalt vonWie man reguläre Sonderzeichen in PHP maskiert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!