Regexp
Description
Guide
Les méta-caractères
Ce sont des caractères qui sont interprétés par l'analyseur. Pour que le méta-caractère * ne soit par interprété par l'analyseur, il faut le faire précéder du caractère '\', il sera alors considéré comme n'importe quel caractère.
Méta-caractères | Signification |
---|---|
? | Opérateur portant sur l'expression précédente : 0 ou une fois l'expression précédente. |
* | Opérateur portant sur l'expression précédente : 0, 1 ou plusieurs fois l'expression précédente. |
+ | Opérateur portant sur l'expression précédente : 1 ou plusieurs fois l'expression précédente. |
{n} | Opérateur portant sur l'expression précédente : n fois exactement l’expression précédente |
{n,m} | Opérateur portant sur l'expression précédente : n fois minimum et m fois maximum l’expression précédente |
^ | Négation ou début de ligne. |
$ | Fin de ligne. |
| | Opérateur ou. |
Les intervalles de caractères
Un intervalle de caractères peut être défini en écrivant entre [ ] la liste des caractères de cet intervalle.
Classe | Signification |
---|---|
[abc] | La classe des trois caractères a, b et c |
[a-z] | La classe de tous les caractères de a à z. |
[^abc] | La classe de tous les caractères sauf a, b et c. |
[a-zA-Z] | L'union des classes [a-z] et [A-Z]. |
Exemples
Avec la commande grep
grep '^smu' file
cherche 'smu' au début de chaque ligne dans file.
grep 'smu$' file
cherche 'smu' à la fin de chaque ligne dans file.
grep '^smu$' file
retourne les lignes contenant seulement et exactement 'smu'.
grep '\^s' file
retourne les lignes commençant par '^s',car "\" permet de considérer ^ comme un caractère normal et non plus un méta-caractère.
grep '[Ss]mu' file
affiche les lignes contenant 'Smu' ou 'smu'
grep 'B[oO][bB]' file
affiche les lignes contenant BOB, Bob, BOb or BoB
grep '^$' file
recherche les lignes vides dans file
grep '[0-9][0-9]' file
recherche les lignes contenant 2 chiffres côte à côte.