Vous êtes sur la page 1sur 3

Les Expressions régulières (En 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)) ;

=>affiche false =>affiche true

/.../ délimiteur de l’expression


La fonction test vérifie si une chaine correspond au motif défini dans l’expression
régulière. Elle retourne true ou false.
Vérifier si une chaine ch contient la lettre « a » deux fois successivement

exp=/aa/ ; exp=/a{2}/ ;
ch= " les aamis" ch= "les aamis" ;
alert(ch.test(exp)) ; alert(exp.test(ch)) ;

=>affiche true =>affiche true

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] / ;

Vérifier si une chaine contient n’importe quelle lettre minuscule


exp=/[a-z] / ;
Pour mettre le "-" dans un ensemble, on le place en premier ou en dernier.
exp =/[-a-z]/ ;
Ou exp =/[a-z-]/ ;

Vérifier si une chaine contient n’importe quelle lettre minuscule ou majuscule


exp=/[a-zA-Z] / ;
Ou exp=/[a-z,A-Z] / ;

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, }/ ;

/a[a-z]+/ : reconnaît les mots qui commencent par a


/(a[a-z])+/ : reconnaît les mots dont les lettres impaires sont des "a" ("ananas")

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}$/ ;

Nom est une chaine alphabétique de taille minimale égale à 3


Exp=/^[a-zA-Z]{3,}$/ ;

Nom est une chaine alphabétique non vide


Exp=/^[a-zA-Z]{1,}$/ ;

Ou

Exp=/^[a-zA-Z]+$/ ;

Cin est une chaine de 8 chiffres dont le premier est soit 0 ou 1


Exp=/^[01][1}[0-9]{7}$/ ;
Ou Exp=/^[^2-9][1}[0-9]{7}$/ ;

Tel est une chaine de 8 chiffres dont le premier est différent de 0


Exp=/^[^0][1}[0-9]{7}$/ ;
Ou Exp=/^[1-9][1}[0-9]{7}$/ ;

Un matricule est deux lettres majuscules suivie de deux chiffres


Exp=/^[A-Z][2}[0-9]{2}$/ ;

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

Exp=/^[a-zA-Z0-9] {3,} [@] [a-zA-Z0-9] {3,} [.] [a-zA-Z] {2,4} $/ ;

Remarque : si un ensemble se répète une seule fois on peut omettre {1}

Vous aimerez peut-être aussi