Les expressions régulières permettent de vérifier qu'une chaine de caractères est bien l'écriture d'un certain type de données, sans avoir à programmer cette vérification.
\d représente un chiffre quelconque.
\s représente un caractères d'espacement (blanc,passage à la ligne, saut de page, tabulation ...).
-: permet de représenter un intervalle de caractère.
Exemples:
Pour représenter une alternative entre plusieurs caractères on utilise des crochets.
Exemples:
+ permet de répéter une ou plusieurs fois le caractère qui précède.
Exemple: un nombre entier positif est une suite non vide de chiffres, ce qui se représentera par l'expression régulière \d+.
(expression régulière)+ signifie répéter une ou plusieurs fois l'expression entre parenthèse.
Exemple: \d+(,\d+)+ définit une suite d'au moins deux nombres entiers positifs séparés par des virgules.
* permet de répéter zéro, une ou plusieurs fois le caractère qui précède.
Exemple: \s* représente une suite éventuellement vide de blancs. On pourra par exemple utiliser cette expression régulière pour représenter un nombre entier positif éventuellement précédé et/ou suivie d'une suite de blancs par \s*\d+\s*.
(expression régulière)* signifie répéter zéro, une ou plusieurs fois l'expression entre parenthèse.
Exemple: \d+(,\d+)* définit un ou plusieurs nombres entiers positifs séparés par des virgules.
{n} permet de répéter n fois le caractère qui précéde.
Exemple: \d{4} représente un nombre de quatre chiffres.
(expression régulière){n} permet de répéter n fois l'expression régulière entre parenthèses.
Exemple: \d+(,\d+){4} définit cinq nombres entiers positifs séparés par des virgules.
? rend le caractère qui précède optionnel.
Exemple: les? représente les deux mots le ou les.
(expression régulière)? rend l'expression entre parenthèses optionnelle.
Exemple: [a-zA-Z](\d+)? définit toutes les chaines de caractères commencant par une lettre, suivie optionnellement par une suite de chiffres.
\ permet d'annuler la signification des caractères spéciaux permettant de définir des expressions
régulières afin de pouvoir les utiliser à l'intérieur d'une expression régulière en tant que caractère normal.
Exemples, il faut écrire:
Une expression régulière peut optionnellement commencer par ^ et/ou se terminer par $. Cela nous donne quatre possibilités:
En Javascript les expressions régulières sont représentées par la classe RegExp.
Une chaine de caractères entre / et / est considérée comme un objet de cette classe.
Par exemple:
er = /^\d+$/;
affecte à er l'expression régulière ^\d+$.
La méthode Test de la classe RegExp permet de vérifier qu'une chaine de caractères est compatible avec une expressions régulières.
Plus précisément, si ch est une chaine de caractères et er une expression régulière, er.Test(ch) vaut true si et seulement si ch est compatible avec l'expression régulière er.
Avec l'exemple précédent, er.Test(ch) vaut true si et seulement si ch est une suite de chiffres.
Exemple: voir Nombres.