Regex en PHP

Fonctions PHP JSON et Callback
POO en PHP : Guide du débutant

Qu'est-ce qu'une expression régulière ?

L'expression régulière est fondamentalement commencée à partir des mathématiques qui définissent une gamme de caractères dans un certain but. Différentes langues obtiennent des références de ce concept mathématique et l'appliquent pour rechercher des modèles et valider des données. Dans cet article, vous apprendrez les regex en PHP.

Il existe de nombreux cas d'utilisation de regex en PHP comme la recherche, la validation, etc. Dans cet article, vous découvrirez les expressions régulières dans les modèles de recherche. Une fois que vous serez en mesure de comprendre la regex, vous pourrez l'utiliser n'importe où en PHP.

Une expression régulière peut être utilisée pour rechercher du texte à partir de chaînes ou pour remplacer des caractères ou des chaînes spécifiques.

Une expression régulière peut être un caractère unique ou une combinaison de certains modèles complexes.

Syntaxe des expressions régulières en PHP

Le délimiteur peut être n'importe quel caractère qui n'est pas une lettre, un chiffre, une barre oblique inverse ou un espace. Le délimiteur le plus courant est la barre oblique (/), mais lorsque votre modèle contient des barres obliques, il est pratique de choisir d'autres délimiteurs tels que # ou ~.

Généralement, l'expression régulière en PHP consiste of trois parties.

  1. Délimiteur – Il spécifie qui indique le début ou la fin de la chaîne dans le motif. Un délimiteur ne peut pas être une barre oblique inverse, un chiffre, une lettre ou un espace. Cependant, une barre oblique peut être utilisée comme délimiteur. Si les motifs que vous recherchez consistent en des barres obliques, vous pouvez modifier le délimiteur en inclinaison ~ ou en dièse #.
  2. Motif – Il a spécifié le modèle ou la séquence de caractères à rechercher.
  3. Modificateurs (facultatif) – Vous pouvez rendre la correspondance des cas de modèle insensible ou sensible.

Exemple

$exp = "/php.org/i";

RegextFonctions en PHP

PHP fournit des fonctions intégrées pour les expressions régulières. Les fonctions regex les plus courantes en PHP sont :

  • Preg_replace() – Il compte le nombre de fois où le motif apparaît dans la chaîne et renvoie le nombre.
  • Preg_match() – renvoie 0 en cas de motif non trouvé dans la chaîne. 1 en cas de trouvé.
  • Preg_match_all() – Cette fonction remplace la chaîne par une autre chaîne où le modèle est mis en correspondance. Vous aurez une idée plus claire dans la section suivante si vous avez du mal à comprendre.

fonction preg_match en PHP

La fonction Preg_match renvoie le résultat binaire. C'est soit 0, soit 1. Si la chaîne contient le modèle que vous spécifiez dans le premier argument de la fonction preg_match, elle renverra 1. 0 en cas d'introuvable.

Regardez l'exemple suivant, dans lequel nous recherchons dans la chaîne les caractères PHP.

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

fonction preg_match_all en PHP

Cette fonction ne dit pas si le motif existe ou non dans la chaîne. Il renvoie le nombre de fois qu'un motif apparaît dans la chaîne. Regardez l'exemple suivant dans lequel nous avons effectué une recherche insensible à la casse des motifs dans la chaîne donnée.

Exemple

<?php
$str = "It is raining heavily. Cars are slipping outside. ";
$pattern = "/ing/i";
echo preg_match_all($pattern, $str); // Outputs 4
?>

/i dans l'exemple ci-dessus, spécifiez que la chaîne peut être en minuscule ou en majuscule.

fonction preg_replace en PHP

preg_replace La fonction renvoie une nouvelle chaîne en remplaçant le modèle trouvé dans la chaîne par une autre chaîne de caractères. Cette fonction accepte trois paramètres. Le premier paramètre est le modèle à rechercher dans la chaîne du deuxième paramètre. Enfin, le troisième paramètre est la chaîne à mettre en place du motif trouvé dans la chaîne.

Regardez l'exemple suivant, dans lequel nous remplaçons le mot site Web par PHP.org

Exemple

<?php
$str = "Visit Website!";
$pattern = "/Website/i";
echo preg_replace($pattern, "php.org", $str); // Outputs "Visit php.org!"
?>

Modificateurs d'expressions régulières

Vous pouvez ajuster le comportement de recherche de l'expression régulière en PHP en définissant les variables de modification suivantes.

  1. I – Utilisé pour effectuer une recherche insensible à la casse.
  2. U – Pour la recherche correcte des modèles utf-8.
  3. M – Ajoute la multi-recherche dans la regex PHP. Certains modèles recherchent au début ou à la fin de chaque ligne. Ainsi, ces modèles examinent le début et la fin de chaque ligne de la chaîne.

Spécifier la plage dans l'expression régulière PHP

Comprenez les trois concepts suivants. Cela vous aidera à mettre la plage en motifs lors de la recherche de texte ou de son remplacement.

  1. [abc] – Les crochets indiquent qu'ils trouvent n'importe quel caractère parmi ces caractères dans la chaîne.
  2. [^ 0-9] – Recherchez les caractères qui ne sont pas dans la plage entre parenthèses.
  3. [0-9] – Trouvez un caractère entre 0 et 9. 0 et 9 sont inclus dans ce cas.

Vous pouvez en savoir plus sur les fonctions Regex en PHP ici

Fonctions PHP JSON et Callback
POO en PHP : Guide du débutant
en English
X
Remonter en haut