Jul 03, 2024

Wiki

Python

Aide

edit SideBar

Search

Les Drapeaux De Compilation


Les drapeaux

On peut passer des paramètres lors de la compilation d'expressions rationnelles : des « drapeaux » exprimant une modification de la manière de réaliser l'analyse du texte...

re.DOTALL
Le métacaractère point (.) interceptera tous les caractères (et pas « tout caractère autre que \n »).
re.IGNORECASE
Ne pas faire la distinction entre majuscule et minuscule.
re.LOCALE
Prendre en compte les particularités du langage courant (français, ...)
re.MULTILINE
Modification du comportement de ^ et \$, pour considérer les débuts et fins de lignes, et non ceux de chaînes.
re.VERBOSE
Les expressions rationnelles seront détaillées.

Ces drapeaux existent aussi sous forme condensé : re.I est équivalent à re.IGNORECASE.

Plusieurs drapeaux peuvent être passés à compile(), en utilisant le tube : l'argument re.I | re.M correspond, par exemple, à passer les deux drapeaux re.IGNORECASE et re.MULTILINE.

Précisons la signification de certains drapeaux...

re.LOCALE

Rend les métacaractères \w, \W, \b, et \B sensibles à la langue du système (la locale).

Par exemple, \w signifie « tout caractère alphanumérique ». À la base, cela correspond à [a-zA-Z0-9_].

Ce méta-caractère est souvent employé sous la forme \w+, pour relever les mots du texte, qui sont des successions de ces caractères. Seulement, en français, ces mots peuvent contenir des accents, ou d'autres symboles : é, ç...

Si le drapeau re.LOCALE est passé à compile() et si la locale du système est bien définie à français, alors le métacaractère \w interceptera aussi ces caractères propres à la langue française, rendant possible l'utilisation de \w+ pour relever les mots du texte.

re.MULTILINE

Habituellement, les méta-caractères ^ et \$ désignent respectivent le début et la fin de la chaîne. Si cette dernière s'étend sur plusieurs lignes (avec des \n, donc), alors :

  • ^ correspond au début de la première ligne,
  • \$ correspond à la fin de la dernière ligne.

Passer le drapeau re.MULTILINE revient à modifier ce comportement. Alors

  • ^ correspond au début de chaque ligne,
  • \$ correspond à la fin de chaque ligne.

Page Actions

Recent Changes

Group & Page

Back Links