PHP -Tutorial

PHP-HOME PHP-Einführung PHP-Installation PHP-Syntax PHP-Kommentare PHP-Variablen PHP-Echo / Drucken PHP-Datentypen PHP-Strings PHP-Nummern PHP-Mathematik PHP-Konstanten PHP-Operatoren PHP If...Else...Elseif PHP-Schalter PHP-Schleifen PHP-Funktionen PHP-Arrays PHP-Superglobals PHP-RegEx

PHP -Formulare

Handhabung von PHP-Formularen PHP-Formularvalidierung PHP-Formular erforderlich PHP-Formular-URL/E-Mail PHP-Formular vollständig

PHP- Erweitert

PHP-Datum und -Zeit PHP einschließen Umgang mit PHP-Dateien PHP-Datei öffnen/lesen PHP-Datei erstellen/schreiben Hochladen von PHP-Dateien PHP-Cookies PHP-Sitzungen PHP-Filter PHP-Filter für Fortgeschrittene PHP-Callback-Funktionen PHP-JSON PHP-Ausnahmen

PHP -OOP

PHP Was ist OOP PHP-Klassen/Objekte PHP-Konstruktor PHP-Destruktor PHP-Zugriffsmodifikatoren PHP-Vererbung PHP-Konstanten Abstrakte PHP-Klassen PHP-Schnittstellen PHP-Eigenschaften Statische PHP-Methoden Statische PHP-Eigenschaften PHP-Namespaces PHP-Iterables

MySQL- Datenbank

MySQL-Datenbank MySQL Connect MySQL-DB erstellen MySQL-Tabelle erstellen MySQL-Daten einfügen MySQL Letzte ID abrufen MySQL Mehrfach einfügen MySQL vorbereitet MySQL Select-Daten MySQL-Wo MySQL-Reihenfolge nach MySQL-Daten löschen MySQL-Update-Daten MySQL-Limit-Daten

PHP- XML

PHP-XML-Parser PHP-SimpleXML-Parser PHP SimpleXML - Get PHP-XML-Expat PHP-XML-DOM

PHP -AJAX

AJAX-Einführung AJAX-PHP AJAX-Datenbank AJAX-XML AJAX Live-Suche AJAX-Umfrage

PHP- Beispiele

PHP-Beispiele PHP-Compiler PHP-Quiz PHP-Übungen PHP-Zertifikat

PHP- Referenz

PHP-Übersicht PHP-Array PHP-Kalender PHP-Datum PHP-Verzeichnis PHP-Fehler PHP-Ausnahme PHP-Dateisystem PHP-Filter PHP-FTP PHP-JSON PHP-Schlüsselwörter PHP-Libxml PHP-Mail PHP-Mathematik PHP-Sonstiges PHP MySQLi PHP-Netzwerk PHP-Ausgabesteuerung PHP-RegEx PHP-SimpleXML PHP-Stream PHP-String Umgang mit PHP-Variablen PHP-XML-Parser PHP-Zip PHP-Zeitzonen

Reguläre PHP -Ausdrücke


Was ist ein regulärer Ausdruck?

Ein regulärer Ausdruck ist eine Zeichenfolge, die ein Suchmuster bildet. Wenn Sie in einem Text nach Daten suchen, können Sie dieses Suchmuster verwenden, um zu beschreiben, wonach Sie suchen.

Ein regulärer Ausdruck kann ein einzelnes Zeichen oder ein komplizierteres Muster sein.

Reguläre Ausdrücke können verwendet werden, um alle Arten von Textsuch- und Textersetzungsoperationen durchzuführen.


Syntax

In PHP sind reguläre Ausdrücke Zeichenfolgen, die aus Trennzeichen, einem Muster und optionalen Modifikatoren bestehen.

$exp = "/w3schools/i";

Im obigen Beispiel /ist das Trennzeichen , w3schools das Muster , nach dem gesucht wird, und iein Modifikator , der die Suche unabhängig von Groß- und Kleinschreibung macht.

Das Trennzeichen kann ein beliebiges Zeichen sein, das kein Buchstabe, keine Zahl, kein umgekehrter Schrägstrich oder kein Leerzeichen ist. Das gebräuchlichste Trennzeichen ist der Schrägstrich (/), aber wenn Ihr Muster Schrägstriche enthält, ist es praktisch, andere Trennzeichen wie # oder ~ zu wählen.


Reguläre Ausdrucksfunktionen

PHP bietet eine Vielzahl von Funktionen, mit denen Sie reguläre Ausdrücke verwenden können. Die Funktionen preg_match(), preg_match_all()und preg_replace()gehören zu den am häufigsten verwendeten:

Function Description
preg_match() Returns 1 if the pattern was found in the string and 0 if not
preg_match_all() Returns the number of times the pattern was found in the string, which may also be 0
preg_replace() Returns a new string where matched patterns have been replaced with another string

Verwendung von preg_match()

Die preg_match()Funktion teilt Ihnen mit, ob eine Zeichenfolge Übereinstimmungen mit einem Muster enthält.

Beispiel

Verwenden Sie einen regulären Ausdruck, um eine Suche ohne Berücksichtigung der Groß-/Kleinschreibung nach „w3schools“ in einer Zeichenfolge durchzuführen:

<?php
$str = "Visit W3Schools";
$pattern = "/w3schools/i";
echo preg_match($pattern, $str); // Outputs 1
?>

Verwendung von preg_match_all()

Die preg_match_all()Funktion teilt Ihnen mit, wie viele Übereinstimmungen für ein Muster in einer Zeichenfolge gefunden wurden.

Beispiel

Verwenden Sie einen regulären Ausdruck, um die Anzahl der Vorkommen von "ain" in einer Zeichenfolge ohne Berücksichtigung der Groß-/Kleinschreibung zu zählen:

<?php
$str = "The rain in SPAIN falls mainly on the plains.";
$pattern = "/ain/i";
echo preg_match_all($pattern, $str); // Outputs 4
?>

Verwendung von preg_replace()

Die preg_replace()Funktion ersetzt alle Übereinstimmungen des Musters in einer Zeichenfolge durch eine andere Zeichenfolge.

Beispiel

Verwenden Sie einen regulären Ausdruck ohne Berücksichtigung der Groß-/Kleinschreibung, um Microsoft durch W3Schools in einer Zeichenfolge zu ersetzen:

<?php
$str = "Visit Microsoft!";
$pattern = "/microsoft/i";
echo preg_replace($pattern, "W3Schools", $str); // Outputs "Visit W3Schools!"
?>


Modifikatoren für reguläre Ausdrücke

Modifikatoren können ändern, wie eine Suche durchgeführt wird.

Modifier Description
i Performs a case-insensitive search
m Performs a multiline search (patterns that search for the beginning or end of a string will match the beginning or end of each line)
u Enables correct matching of UTF-8 encoded patterns

Reguläre Ausdrucksmuster

Klammern werden verwendet, um eine Reihe von Zeichen zu finden:

Expression Description
[abc] Find one character from the options between the brackets
[^abc] Find any character NOT between the brackets
[0-9] Find one character from the range 0 to 9

Metazeichen

Metazeichen sind Zeichen mit besonderer Bedeutung:

Metacharacter Description
| Find a match for any one of the patterns separated by | as in: cat|dog|fish
. Find just one instance of any character
^ Finds a match as the beginning of a string as in: ^Hello
$ Finds a match at the end of the string as in: World$
\d Find a digit
\s Find a whitespace character
\b Find a match at the beginning of a word like this: \bWORD, or at the end of a word like this: WORD\b
\uxxxx Find the Unicode character specified by the hexadecimal number xxxx

Quantifizierer

Quantifizierer definieren Mengen:

Quantifier Description
n+ Matches any string that contains at least one n
n* Matches any string that contains zero or more occurrences of n
n? Matches any string that contains zero or one occurrences of n
n{x} Matches any string that contains a sequence of X n's
n{x,y} Matches any string that contains a sequence of X to Y n's
n{x,} Matches any string that contains a sequence of at least X n's

Hinweis: Wenn Ihr Ausdruck nach einem der Sonderzeichen suchen muss, können Sie einen umgekehrten Schrägstrich ( \ ) verwenden, um sie zu maskieren. Um beispielsweise nach einem oder mehreren Fragezeichen zu suchen, können Sie den folgenden Ausdruck verwenden: $pattern = '/\?+/';


Gruppierung

Sie können Klammern verwenden ( ), um Quantifizierer auf ganze Muster anzuwenden. Sie können auch verwendet werden, um Teile des Musters auszuwählen, die als Übereinstimmung verwendet werden sollen.

Beispiel

Verwenden Sie die Gruppierung, um nach dem Wort "Banane" zu suchen, indem Sie nach ba suchen, gefolgt von zwei Vorkommen von na :

<?php
$str = "Apples and bananas.";
$pattern = "/ba(na){2}/i";
echo preg_match($pattern, $str); // Outputs 1
?>

Vollständige RegExp-Referenz

Eine vollständige Referenz finden Sie in unserer Complete PHP Regular Expression Reference .

Die Referenz enthält Beschreibungen und Beispiele aller regulären Ausdrucksfunktionen.