Combiner des regex par leur nom
Bonjour à tous,
Je cherche à identifier des séquences de nombres écrits en toutes lettres ("vingt-huit", "mille cinq cent" etc) et j'ai trouvé pour cela une façon de le faire sur le web en définissant des regex pour les unités, les dizaines etc.
Comme ça, on peut tout décrire en combinant les regex, mais justement c'est sur l'étape où on recombine les regex que ça plante : "unknown extension ?& at position 1" (la syntaxe ne correspond sans doute pas à du python) :
Code:
1 2 3 4 5 6
|
one_to_9 = r"^un|deux|trois|quatre|cinq|six|sept|huit|neuf$"
ten_to_19 = r"^dix|onze|douze|treize|quatorze|quinze|seize|dix-sept|dix-huit|dix-neuf$"
two_digit_prefix = r"^vingt|trente|quarante|cinquante|soixante|soixante-dix|quatre-vingt|quatre-vingt-dix|septante|octante|nonante$"
regex_1_to_99 = (?&two_digit_prefix)(?:[- ](?&one_to_9))?|(?&ten_to_19)| (?&one_to_9) # c'est là que ça bloque |
Sauriez-vous comment on peut réutiliser des regex au sein d'autres regex en les appelant par leur nom ?
Un grand merci d'avance,
Cordialement