Introduction à l’utilisation des corpus Introduction aux expressions régulières
Questions abordées Aujourd’hui (18 Octobre 2006) Qu’est-ce qu’une expression régulière ? A quoi peut servir une expression régulière ? Comment construire des patrons ? Comment faire des requêtes avec TextStat/Wall en utilisant les expressions régulières.
Qu’est-ce qu’une expression régulière ? Qu’ont en commun les expressions suivantes ? Enlarge Image (125K) Enlarge Image (273K) Enlarge Image (159K) Ou alors volatile, volatile-rich, volatilization, volatility, volatilize ? écrire, écrirais, écrivons, écrirons …. Comment pourrait-on décrire une url ? Ou une date ?
Qu’est-ce qu’une expression régulière ? formule écrite dans un langage* crée dans le but de pouvoir décrire d’une façon concise des classes de chaînes de caractères repérage de ‘patrons’ ou ‘motifs’ chaîne de caractères = suite de symboles caractère = lettres, nombres, ponctuation, espaces, tabs
A quoi sert une expression régulière ? Les applications sont immenses et vous en aurez certainement besoin un jour !!! Rechercher/remplacer des séquences spécifiques dans les corpus. (en formulant un patron qu’on recherche) Les outils de traitement de texte, concordanciers permettent en général des requêtes pas expressions régulières La syntaxe des expressions régulières peut varier mais les utilités sont les mêmes.
Comment construire des patrons ? (Syntaxe des expressions régulières)
Comment construire des patrons ? 1. Chaînes de caractères les plus simples expressions : chaînes de caractères : « house » « House » « out of » Exceptions : les caractères spéciaux Ils doivent être ‘protégés’ par le symbole \.\^$|[ ]( )
Comment construire des patrons ? 2. La disjonction (alternatives) caractères alternatifs [HhMm]ouse r[iau]ng i[sz]e [ ] [aeiou] chaîne de caractères alternatives in (any|every) volcano|lava
Comment construire des patrons ? 3. Intervalles [0-9] [a-z] [A-Z] [a-c] Autres exemples d’ensembles(alternatives) : [0-9a-zA-Z] [a-zàèêëéïüùç]
Comment construire des patrons ? 4. La négation [^A-Z] [^aeoiuy] [^Dd] ni D ni d
Comment construire des patrons ? 5. Quantificateurs ? représente 0 ou 1 occurrence de l‘expression qui précède Ex : arbres? arbre | arbres colou?r color | colour interest(s|(ed|ing)(ly)?)? (school)? Bus(es)? * 0 ou plus occurrences de l’expression qui le précède lo*ng lng, long, loong, looong, loooong + au moins une occurrence as [a-z]+ as volatil[a-z]+
Comment construire des patrons ? 5. Autres quantificateurs lo{1,3}ng long, loong, looong as ([a-z]+ ){1,3}as
Comment construire des patrons ? 6. Un dernier point le symbole. remplace n’importe quel caractère (caractère joker) r.ng ring, rang, rbng, r4ng, r.ng, rng r.*ng -> rng, rdshfksdhng, riiing, etc. wait.{0,14} for the more.{0,30} the more the (more|less).{0,30} the (more|less)
Comment construire des patrons ? Exercices Écrire les expressions régulières correspondant aux les mots commençant par over– les mots finissant par –ion formes du verbe ask formes des verbes finissant par –ise/–ize adresses é mail sites web dates.