Expression rationnelle

De Wiki de Geonov

Les expressions rationnelles (ou souvent, mais à tord, "expressions régulières" en raison du terme anglais "regular expression") sont un langage informatique.

Elles permettent la recherche de chaînes de caractères complexes au sein d'un texte.

1 Caractères ASCII

Pour rechercher un caractère ASCII en expression rationnelle, il faut utiliser la syntaxe suivante :

\x + [code hexadécimal du caractère]

Par exemple pour rechercher le caractère ETX (End of Text) dont le code hexadécimal est le 03 (cf. http://www.table-ascii.com), la syntaxe est :

\x03

2 Groupes

Les parenthèses permettent de créer des sous-groupes dans la recherche.

Il est ensuite possible de récupérer les groupes individuellement avec la commande :

\ + [numéro du groupe]

Par exemple, cette expression distingue les 5 premiers caractères, les 3 suivants, les 6 suivants et le reste :

^(.{5})(.{3})(.{6})(.*)$

\0 renvoie tout le résultat, \1 renvoie le premier groupe (les 5 premiers caractères) et \2 renvoie le deuxième groupe (les 3 caractères du 2ème groupe).

3 Tester ses expressions rationnelles en ligne

Le site http://rubular.com permet de tester ses expressions rationnelles en ligne à l'aide du langage Ruby.