Académique Documents
Professionnel Documents
Culture Documents
Expressions Régulières - Javascript
Expressions Régulières - Javascript
Pourquoi ?
- pour chercher / vérifier / remplacer du texte vérifier qu'un texte correspond bien à
un nombre entier, à une adresse web...
- remplacer toutes les occurrences d'un texte par un autre dans une chaine (string) ....
Comment ?
un langage qui décrit des chaînes de caractères.
Par exemple :
Vérifier si une chaine ch contient la lettre a.
exp=/a/ ; exp=/a/ ;
ch= " bonjour " ; ch= "les amis" ;
alert(ch.test(exp)) ; alert(exp.test(ch)) ;
exp=/aa/ ; exp=/a{2}/ ;
ch= " les aamis" ch= "les aamis" ;
alert(ch.test(exp)) ; alert(exp.test(ch)) ;
Ensembles
Vérifier si une chaine ch contient n’importe quelle lettre voyelle (il suffit de mettre les
caractères en question entre les crochets)
exp= /[aeiouy]/ ;
Intervalles
Vérifier si une chaine contient n’importe quel chiffre
exp=/[0-9] / ;
Négation
Vérifier si une chaine contient un caractère qui n’est pas un chiffre (marquée par "^")
exp=/[^0-9]/ ;
Disjonction
Vérifier si une chaine contient le caractère « a » ou « z » (marquée par "|" barre verticale)
exp=/[a|z]/ ;
Répétition
* : reconnaît l'expression 0 ou n fois
+ : reconnaît l'expression 1 ou n fois
? : reconnaît l'expression 0 ou 1 fois
{n} : répète n fois
{n,m} : répète entre n et m fois
{n, } : répète au minimum n fois
Vérifier si une chaine non vide contient des lettres alphabétiques
exp= / [a-z]+/ ;
Ou exp= / [a-z]{1, }/ ;
Autres opérateurs
^ : reconnaît le début de la chaîne
$ : reconnaît la fin de la chaîne
Exemples :
/^a/ : toute chaîne commençant par "a"
/^[a-z]$/ : une chaîne contenant exactement une lettre minuscule (et sans accents).
Exemples d’expressions régulières :
Nom est une chaine de 3 à 30 lettres
Exp=/^[a-zA-Z]{3,30}$/ ;
Ou
Exp=/^[a-zA-Z]+$/ ;
Email respecte le format suivant ch1@ch2.ch3 avec ch1 et ch2 sont deux
chaines alphanumériques chacune de longueur supérieure ou égale 3. Ch3 est
une chaine de 2 à 4 lettres.
Exp=/^[a-zA-Z0-9] {3,} [@] {1} [a-zA-Z0-9] {3,} [.] {1} [a-zA-Z] {2,4} $/ ;
Ou