lundi 1 avril 2013

Regexp les classes de regex

Les regex
Il peut également être utile de vérifier si une chaîne contient des caractères d'un certain type (numérique, alphanumérique, ...) sans avoir à les énumérer. Pour cela les expressions régulières définissent des classes de caractères, dont la syntaxe est:

[:classe:]

Les classes de caractères sont celles définies par UNIX. Voici un tableau récapitulant certaines de ces classes:

Nom de la classe Description
[:alnum:] caractères alphanumériques (équivalent à [A-Za-z0-9] )
[:alpha:] caractères alphabétiques ( [A-Za-z] )
[:blank:] caractères blanc (espace, tabulation)
[:ctrl:] caractères de contrôe (les premiers du code ASCII
[:digit:] chiffre ( [0-9] )
[:graph:] caractère d'imprimerie (qui fait une marque sur l'écran en quelque sorte)
[:print:] caractère imprimable (qui passe à l'imprimante ... tout sauf les caractères de contrôle)
[:punct:] caractère de ponctuation
[:space:] caractère d'espacement
[:upper:] caractère majuscule
[:xdigit:] caractère hexadécimal

Voici quelques exemples d'utilisation des classes de caractère dans une expression régulière :

chaine composée d'un ou plusieurs caractère(s) alphanumérique(s) "^[:alnum:]+$" chaine contenant un caractère de ponctuation ou un caractère d'espacement "[:punct:]|[:space:]" Un nombre "^[:digit:]+$"


Les fonctions de manipulation d'expressions régulières

PHP fournit quelques fonctions de bases permettant de manipuler des chaînes à l'aide d'expressions régulières.


Ce document issu de CommentCaMarche.net est soumis à la licence GNU FDL . Vous pouvez copier, modifier des copies de cette page tant que cette note apparaît clairement.

Aucun commentaire:

Enregistrer un commentaire