Fonctions PHP * preg_match (masque, sujet[, TableauOccurrences]) * preg_match_all (masque, sujet[, TableauOccurrences]) * preg_replace (masque, remplacement, sujet) * preg_replace_callback (masque, callback, sujet) * preg_grep (masque, array) * preg_split (masque, sujet) Classes de caractères de base * \w Tout caractère "de mot" [a-z0-9_] plus les accentués * \W Tout autre caractère qu'un caractère "de mot" * \s Blanc (espace, tab, CRLF) * \S Tout caractère non blanc * \d Chiffres (0-9) * \D Tout caractère sauf chiffres * . (point) Tout caractère sauf retour ligne/nouvelle ligne Caractères Meta * ^ Ancrage de début de chaîne (ou ligne en mode multiligne - option m) * $ Ancrage de fin de chaîne (ou ligne en mode multiligne - option m) * [ Ouverture d'une classe de caractères * ] Fermeture d'une classe de caractères * | Alternatives (a|b|c) -> caractère a ou b ou c * ( Ouverture d'un groupement logique ou de capture * ) Fermeture d'un groupement logique ou de capture * \ Caractère d'échappement Quantificateurs * * Aucun ou plus * + Un ou plus * n? Zero ou une occurrence de n * {n} n caractères exactement * {n,} n caratères ou plus * {,m} m caratères ou moins * {n,m} entre n and m occurrences (n et m compris) Options des masques * i insensible à la casse * m mode multiligne - ^ et $ marquent le début et fin de ligne pour une chaîne multiligne * s le point . prendra aussi les retours ligne * x permet les commentaires dans un motif * e évaluation de code dans un preg_replace() * S Optimisation d'un masque par le moteur regex * U quantificateurs du masque non gourmand * u masque UTF-8 Assertions simples * \b limite de mots * \B tout caractère sauf limite de mots * \A début de la chaîne sujet (indépendant du mode multi-lignes) * \Z fin de la chaîne sujet ou nouvelle ligne à la fin de la chaîne sujet (indépendant du mode multi-lignes) * \z fin de la chaîne sujet (indépendant du mode multi-lignes) Assertions et autres options de sous-masques * (?:) transforme des parenthèses normales en parenthèses non capturantes * (?=) assertion avant positive (positive lookahead) foo(?=bar) trouve foo si suivi par bar * (?!) assertion avant négative (negative lookahead) foo(?!bar) trouve foo si pas suivi par bar * (?<=) assertion arrière positive (positive lookbehind) (?<=foo)bar trouve foo si précédé par bar * (?) Sous-masque unique (?>\d+)bar relativement plus performant en cas d'échec * (?(x)) Sous-masque conditionnel (x référence arrière ou condition) * (?#) parenthèses de commentaires (?# ici votre commentaire)