Bonus : expressions régulières - SimplonSt-Gaudens/programme-web-dev-promo-2 GitHub Wiki

Expressions régulières

Une chaîne entière

  • "licorne" : j'aime les licornes => vrai
  • "ragondin" : j'aime les licornes => faux

Ou

  • "licorne|ragondin" : j'aime les licornes => vrai

Commence par

  • "^j" : j'aime les licornes => vrai
  • "^s" : j'aime les licornes => faux

Finit par

  • "s$" : j'aime les licornes => vrai
  • "j$" : j'aime les licornes => faux

Un parmi

  • "[aeiouy]" : j'aime les licornes => vrai
  • "lic[aeiouy]rnes" : j'aime les licornes => vrai
  • "[zxwb]" : j'aime les licornes => faux

Intervalle

  • "[a-z]" ou "[d-p]"
  • "[A-Z]" ou "[M-S]"
  • "[0-9]" ou #[3-6]
  • Du coup : "[a-zA-Z0-9]"

Exclusion

  • "[^a-z]" si on ne veut pas de lettre en minuscule dans notre chaîne de caractères. Parce que l'accent est à l'intérieur des crochets.

Quantificateurs

  • "z?" : 0 ou 1 "z"

  • "z+" : au moins 1 "z"

  • "z*" : 0, 1 ou plusieurs "z". Oui, on peut s'interroger sur l'utilité de ceci.

  • Pour bosser sur une chaîne de caractères à dénombrer, on utilise des parenthèses : "[(licorne)*]".

  • "^[Te+st]$" reconnaît "Teeeeeeeeest" mais pas "Test pourri".

  • Plutôt que ?,+ et * vous pouvez utiliser des accolades :

  • {3} : exactement 3 occurences

  • {2, 4} : entre 2 et 4 occurences

  • {2,} : 2 occurences ou plus

Caractères spéciaux

  • Pas de souci pour filtrer des caractères accentués
  • En revanche, pour les caractères spéciaux, il faut les faire précéder par un \ : "z?" correspond bien à "z?" (mais pas à "z").

Les derniers pour la route

  • \d : Indique un chiffre.
  • \D : Indique ce qui n'est PAS un chiffre.
  • \w: Indique un caractère alphanumérique ou un tiret de soulignement.
  • \W : Indique ce qui n'est PAS un mot.
  • \t : Indique une tabulation
  • \n : Indique une nouvelle ligne
  • \r : Indique un retour chariot
  • \s : Indique un espace blanc
  • \S : Indique ce qui n'est PAS un espace blanc (\t \n \r)
  • . : Indique n'importe quel caractère.

Liens