Verwendung der Funktion preg_match() in PHP

Use Preg_match Function Php



Der reguläre Ausdruck ist ein bestimmtes Muster, das verwendet werden kann, um eine bestimmte Zeichenfolge in Textdaten abzugleichen, zu suchen und zu ersetzen. Es ist ein mächtiges Feature jeder Programmiersprache. Es wird hauptsächlich verwendet, um verschiedene Arten von Formularvalidierungen durchzuführen, wie z. B. die Überprüfung von E-Mails, Überprüfung des Telefonformats, Überprüfung der Benutzernamen- und Passwortfelder des Anmeldeformulars usw. Jeder bestimmte Textinhalt kann durch einen regulären Ausdruck gesucht und ersetzt werden Muster. Es wird auch Regex oder RegExp genannt. Es werden verschiedene Arten von Symbolen verwendet, um das Regex-Muster zu definieren.

Für den regulären Ausdruck gibt es in PHP viele eingebaute Funktionen. Die Funktion preg_match() ist eine davon. Diese Funktion wird verwendet, um ein bestimmtes Muster in Zeichenfolgendaten abzugleichen. Wie die Funktion preg_match() in PHP zur Ausführung verschiedener Aufgaben verwendet werden kann, wird in diesem Tutorial erklärt.







Syntax:

Int oderfalsch preg_match (Schnur$muster,Schnur$Betreff [, Array &$übereinstimmungen = Null [,int$flaggen = 0 [,int$offset = 0]]])

Diese Funktion kann fünf Argumente annehmen. Das erste Argument, $muster , ist obligatorisch und definiert das Muster für den Abgleich. Das zweite Argument, $Betreff , ist obligatorisch und enthält die Zeichenfolgendaten, in denen das Muster angewendet wird. Das dritte Argument, $übereinstimmungen , ist optional und gibt ein Array basierend auf der Übereinstimmung zurück. Das vierte Argument, $flaggen , ist optional und enthält je nach Übereinstimmung unterschiedliche Typen von Flag-Werten. Das fünfte Argument, $offset , ist optional und kann verwendet werden, um die Startposition der Suche zu definieren.



Beispiel 1: Passen Sie das Muster auf Groß-/Kleinschreibung und Groß-/Kleinschreibung nicht an

Das folgende Beispiel zeigt die Verwendung der Funktion preg_match() zum Abgleichen des Strings unter Beachtung der Groß-/Kleinschreibung. Erstellen Sie eine PHP-Datei mit dem folgenden Skript.



Hier werden drei Muster zur Anwendung in drei preg_match()-Funktionen verwendet. Das erste Muster, '/Mögen/', wird verwendet, um die Zeichenfolge unter Beachtung der Groß-/Kleinschreibung abzugleichen. Das zweite Muster, '/mögen/' , wird verwendet, um die Zeichenfolge unter Beachtung der Groß-/Kleinschreibung abzugleichen. Das dritte Muster, 'Wie ich' , wird verwendet, um die Zeichenfolge ohne Beachtung der Groß-/Kleinschreibung abzugleichen. Suchmuster() Die Funktion ist im Skript so definiert, dass sie die Funktion preg_match() für den Abgleich verwendet, und gibt die Nachricht basierend auf dem zurückgegebenen Wert dieser Funktion aus.







//Text definieren

$text = „Ich mag PHP. Ich mag JavaScript auch.';

//Definiere drei Arten von Mustern

$muster1 = '/Mögen/';

$muster2 = '/mögen/';

$muster3 = '/Wie ich';

//Funktion zum Suchen des Musters im Text definieren

FunktionSuchmuster($muster, $string)

{

wenn( preg_match ($muster, $string))

rauswerfen 'Suchergebnis: Übereinstimmung wird für das Muster gefunden -$muster
'
;

anders

rauswerfen 'Suchergebnis: Für das Muster wurde keine Übereinstimmung gefunden -$muster
'
;

}

//Drucken Sie den Originaltext

rauswerfen „Der Originaltext lautet: $text
'
;

// Rufen Sie die Funktion dreimal für drei Muster auf

Suchmuster($muster1, $text);

Suchmuster($muster2, $text);

Suchmuster($muster3, $text);

?>

Ausgabe :

Die folgende Ausgabe wird angezeigt, nachdem das Skript vom Server ausgeführt wurde. Die erste Zeile zeigt den Text, in dem die Muster gesucht wurden. Die zweite Zeile zeigt die Ausgabe des ersten Musters. Die dritte Zeile zeigt die Ausgabe des zweiten Musters. Die vierte Zeile zeigt die Ausgabe des dritten Musters.



Beispiel 2: Überprüfen Sie die URL

Das folgende Beispiel zeigt, wie die URL-Adresse mit der Funktion preg_match() validiert wird. Erstellen Sie eine PHP-Datei mit dem folgenden Skript.

Zum Testen wird in der Variablen $url ein URL-Wert zugewiesen. Der String ‘@^(?:https://)?([^/]+)@i’ wird als Muster in der Funktion preg_match() verwendet, um zu überprüfen, ob die URL-Adresse gültig ist oder nicht. Wenn es gültig ist, werden der Hostname und der Domänenname gedruckt, andernfalls wird die Fehlermeldung gedruckt.



//Definiere die URL

$url = 'https://www.linuxhint.com';

// Definiere das Muster für die Validierung der URL

$muster ='@^(?:https://)?([^/]+)@i';

//Überprüfen Sie, ob die URL gültig ist oder nicht

wenn( preg_match ($muster, $url, $matches1))

{

//Drucken Sie die Erfolgsmeldung

rauswerfen 'Die URL ist gültig.
'
;

//Gibt das Array aus, das die Übereinstimmungswerte enthält

rauswerfen 'Die Werte des Arrays sind: ';

print_r ($matches1);

// Den Hostwert abrufen und ausgeben

$host = $matches1[1];

rauswerfen '
Hostname ist:$host'
;

//Suche den Domainnamen aus dem Hostwert

preg_match ('/[^.-lex.europa.eu+.[^.íritu+$/', $host, $matches2);

rauswerfen '
Domainname ist:{$matches2[0]}'
;

}

anders

{

//Drucken Sie die Fehlermeldung

rauswerfen 'Ungültige URL.';

}

?>

Ausgabe :

Die folgende Ausgabe wird angezeigt, nachdem das Skript vom Server ausgeführt wurde. Die im Skript angegebene URL ist gültig. Die Ausgabe zeigt also die Werte der $matches, den Hostnamen der URL und den Domänennamen der URL.

Beispiel 3: Suchmuster mit Flag- und Offset-Werten

Das folgende Beispiel zeigt die Verwendung der Flag- und Offset-Werte in der Funktion preg_match(). Erstellen Sie eine PHP-Datei mit dem folgenden Skript.

Im Skript werden drei Muster für drei Arten des Abgleichs verwendet. In der ersten Funktion preg_match() wird ‘/(bangla)(desh)/’ als Muster und als Flagwert PREG_OFFSET_CAPTURE verwendet. Die Werte der $übereinstimmungen Variable wird basierend auf der Ausgabe der ersten Funktion preg_match() gedruckt. In der zweiten Funktion preg_match() wird ‘/(bangla)(glad)*(desh)/i’ als Muster und als Flagwert PREG_UNMATCHED_AS_NULL verwendet. Wenn ein Teil des Musters nicht übereinstimmt, wird ein NULL-Wert im Array gespeichert. Die Werte der $übereinstimmungen Variable wird basierend auf der Ausgabe der zweiten Funktion preg_match() gedruckt. In der dritten Funktion preg_match() wird ‘/glad/’ als Muster verwendet, der Flag-Wert, PREG_OFFSET_CAPTURE wird verwendet und 3 wird als Offset-Wert verwendet. Die Werte der $übereinstimmungen Variable wird basierend auf der Ausgabe der dritten Funktion preg_match() gedruckt.



//Textwert definieren

$text = 'Bangladesch';

// Definieren Sie drei Arten von Mustern

$muster1 = '/ (bangla) (desh) / ich';

$muster2 = '/ (bangla) (froh) * (desh) / ich';

$muster3 = '/froh/';


//Verwenden des PREG_OFFSET_CAPTURE-Flags

preg_match ($muster1, $text, $übereinstimmungen,PREG_OFFSET_CAPTURE);

rauswerfen '
';  

print_r ($matches);

echo '

'
;

//Verwenden des PREG_UNMATCHED_AS_NULL-Flags

preg_match ($muster2, $text, $übereinstimmungen,PREG_UNMATCHED_AS_NULL);

rauswerfen '
';  

print_r ($matches);

echo '

'
;

//Verwenden des PREG_OFFSET_CAPTURE-Flags und des Offset-Werts

preg_match ($muster3, $text, $übereinstimmungen,PREG_OFFSET_CAPTURE, 3);

rauswerfen '
';  

print_r ($matches);

echo '
'
;

?>

Ausgabe :

Die folgende Ausgabe wird angezeigt, nachdem das Skript vom Server ausgeführt wurde.

Abschluss

Die Verwendung der Funktion preg_match() wurde in diesem Tutorial anhand mehrerer Beispiele erklärt. Auch die Verwendung verschiedener Argumente dieser Funktion wurde hier gezeigt. Die Leser werden diese Funktion in ihrem Skript richtig verwenden können, nachdem sie dieses Tutorial gelesen haben.