Bonjour,
Je suis en difficulté avec les regex :
je voudrais remplacer certains mots par des étiquettes du style <MOT>israélien</MOT>, mais le découpage ne se fait pas sur le mot exact. Dans mon texte, j'ai «israélien» et «lien», ce qui fait un découpage israé<MOT>lien></MOT> au lieu de <MOT>israélien></MOT> !!
Voici mon code :
Est-il possible d'avoir un vrai découpage sur les mots ? Je pensais que les \b suffisaient pour ne pas avoir de problèmes. Si je supprime l'accent sur israélien, il n'y a plus de problème donc c'est sûrement l'accent qui bloque. Mais je ne vois pas comment faire...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 texte = "espagnol et israélien. Voici le lien." mots = ["espagnol","israélien","lien"] for mot in mots: avant = r''\b''+mot+r''\b'' apres = r''<MOT>''+mot+r''</MOT>'' texte = re.sub(avant,apres,texte) print texte
Merci à vous
Partager