J'ai rencontré un problème avec le module re
dans Python 3.6.5. J'ai ce motif dans mon expression régulière:
'\\nRevision: (\d+)\\n'
Mais quand je le lance, je reçois un DeprecationWarning
.
J'ai cherché le problème sur SO , et je n'ai pas trouvé de réponse, en fait - que devrais-je utiliser à la place de \d+
? Juste [0-9]+
ou peut-être autre chose?
Python 3 interprète les littéraux de chaîne comme des chaînes Unicode. Par conséquent, votre\d est traité comme un caractère Unicode échappé.
Déclarez votre modèle RegEx en tant que chaîne brute en préfixant r
, comme ci-dessous:
r'\nRevision: (\d+)\n'
Cela signifie également que vous pouvez supprimer les échappements pour \n
, car ils seront simplement analysés comme des caractères de nouvelle ligne par re
.