Fonctions d'expressions régulières en PHP
Fonctions d'expressions régulières en PHP
PHP propose une variété de fonctions qui vous permettent d'utiliser des expressions régulières.
Parmi les fonctions regexp courantes, on trouve :
-
preg_match()- Renvoie 1 si le motif est trouvé dans la chaîne, et 0 sinon -
preg_match_all()- Renvoie le nombre de fois que le motif a été trouvé dans la chaîne -
preg_replace()- Renvoie une nouvelle chaîne où les motifs correspondants sont remplacés par une autre chaîne -
preg_split()- Divise une chaîne en un tableau en utilisant les correspondances d'une expression régulière comme séparateurs -
preg_grep()- Renvoie un tableau contenant uniquement les éléments de l'entrée qui correspondent au motif donné
Fonction PHP preg_match()
La fonction preg_match() renvoie 1 si le motif est trouvé dans la chaîne, et 0 sinon.
Exemple
Utilisez une expression régulière pour effectuer une recherche insensible à la casse pour "formation-ti.org" dans une chaîne :
$str = "Visitez formation-ti.org"; $pattern = "/formation-ti.org/i"; echo preg_match($pattern, $str); Fonction PHP preg_match_all()
La fonction preg_match_all() renvoie le nombre de correspondances trouvées pour un motif dans une chaîne.
Exemple
Utilisez une expression régulière pour effectuer un comptage insensible à la casse du nombre d'occurrences de "ain" dans une chaîne :
$str = "La pluie en ESPAGNE tombe principalement sur les plaines."; $pattern = "/ain/i"; echo preg_match_all($pattern, $str); Fonction PHP preg_replace()
La fonction preg_replace() remplace toutes les correspondances du motif dans une chaîne par une autre chaîne.
Exemple
Utilisez une expression régulière insensible à la casse pour remplacer Microsoft par formation-ti.org dans une chaîne :
$str = "Visitez Microsoft!"; $pattern = "/microsoft/i"; echo preg_replace($pattern, "formation-ti.org", $str); Fonction PHP preg_split()
La fonction preg_split() divise une chaîne en un tableau en utilisant les correspondances d'une expression régulière comme séparateurs.
Exemple
Utilisez preg_split() pour diviser une chaîne en ses composants :
$str = "Ceci est un texte"; $pattern = "/[\s:]/"; $components = preg_split($pattern, $str); print_r($components); Fonction PHP preg_grep()
La fonction preg_grep() renvoie un tableau contenant uniquement les éléments de l'entrée qui correspondent au motif donné.
Exemple
Obtenez des éléments d'un tableau qui commencent par "p" :
$input = [ "Rouge", "Rose", "Vert", "Bleu", "Violet" ]; $result = preg_grep("/^p/i", $input); print_r($result); La fonction preg_grep() a également un troisième paramètre PREG_GREP_INVERT qui inverse le résultat et renvoie un tableau contenant uniquement les éléments de l'entrée qui ne correspondent pas au motif donné.
Exemple
Obtenez des éléments d'un tableau qui ne commencent pas par "p" :
$input = [ "Rouge", "Rose", "Vert", "Bleu", "Violet" ]; $result = preg_grep("/^p/i", $input, PREG_GREP_INVERT); print_r($result); Groupement
Vous pouvez utiliser des parenthèses ( ) pour appliquer des quantificateurs à des motifs entiers. Elles peuvent également être utilisées pour sélectionner des parties du motif à utiliser comme correspondance.
Exemple
Utilisez le groupement pour rechercher le mot "banane" en cherchant ba suivi de deux instances de na :
$str = "Des pommes et des bananes."; $pattern = "/ba(na){2}/i"; echo preg_match($pattern, $str); Référence complète RegExp
Pour une référence complète, consultez notre Référence complète des expressions régulières en PHP .
Cette référence contient des descriptions et des exemples de toutes les fonctions d'expressions régulières.