Python Language Les drapeaux


Exemple

Pour certains cas particuliers, nous devons modifier le comportement de l’expression régulière, en utilisant les indicateurs. Les flags peuvent être définis de deux manières, via le mot-clé flags ou directement dans l'expression.

Mot-clé Drapeaux

Ci-dessous un exemple pour re.search mais cela fonctionne pour la plupart des fonctions du module re .

m = re.search("b", "ABC")  
m is None
# Out: True

m = re.search("b", "ABC", flags=re.IGNORECASE)
m.group()
# Out: 'B'

m = re.search("a.b", "A\nBC", flags=re.IGNORECASE) 
m is None
# Out: True

m = re.search("a.b", "A\nBC", flags=re.IGNORECASE|re.DOTALL) 
m.group()
# Out: 'A\nB'

Drapeaux communs

Drapeau brève description
re.IGNORECASE , re.I Fait le motif ignorer le cas
re.DOTALL , re.S Fait . correspondre à tout, y compris les nouvelles lignes
re.MULTILINE , re.M Donne ^ correspond au début d'une ligne et $ la fin d'une ligne
re.DEBUG Active les informations de débogage

Pour la liste complète de tous les drapeaux disponibles, vérifiez les documents

Drapeaux en ligne

De la documentation :

(?iLmsux) (Une ou plusieurs lettres de l'ensemble 'i', 'L', 'm', 's', 'u', 'x'.)

Le groupe correspond à la chaîne vide; les lettres définissent les drapeaux correspondants: re.I (ignore case), re.L (dépendant de la locale), re.M (multi-line), re.S (dot match all), re.U (dépendant d'Unicode), et re.X (verbose), pour toute l'expression régulière. Ceci est utile si vous souhaitez inclure les drapeaux dans l'expression régulière, au lieu de transmettre un argument flag à la fonction re.compile ().

Notez que l'indicateur (? X) modifie la façon dont l'expression est analysée. Il doit être utilisé en premier dans la chaîne d'expression, ou après un ou plusieurs caractères d'espacement. S'il y a des caractères non blancs avant le drapeau, les résultats ne sont pas définis.