Introduction à l’utilisation des corpus Introduction aux expressions régulières Questions abordées Ø Aujourd’hui Ø 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 AntConc/IMS 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 Ø [0123456789] Ø [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, r ng Ø 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.