Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Truc: Enlever les accents d'une chaîne

2 réponses
Avatar
Jan Vorwerk
Salut à tous,

J'écris une fonction de recherche dans des noms de fichiers, et le
problème est bien sûr de trouver le nom "sauvés" quand on cherche
"sauve" ou vice-versa.

Après bien des recherches infructueuses, j'ai trouvé une
solution...alors je me suis dit que je vous ferais bien partager ma
trouvaille (j'avais aussi mis à jour un wiki sur le web il y a qq semaines):

---------------------------------------
import unicodedata

def cleanString(s):
"""Removes all accents from the string"""
if isinstance(s,str):
s = unicode(s,"utf8","replace")
s=unicodedata.normalize('NFD',s)
return s.encode('ascii','ignore')
---------------------------------------

A++
Jan

2 réponses

Avatar
Laurent Pointal
Salut à tous,

J'écris une fonction de recherche dans des noms de fichiers, et le
problème est bien sûr de trouver le nom "sauvés" quand on cherche
"sauve" ou vice-versa.

Après bien des recherches infructueuses, j'ai trouvé une
solution...alors je me suis dit que je vous ferais bien partager ma
trouvaille (j'avais aussi mis à jour un wiki sur le web il y a qq
semaines):


Wiki pythonfr...

http://wikipython.flibuste.net/moin.py/JouerAvecUnicode#head-1213938516c633958921591439c33d202244e2f4

Il y a ma première (mauvaise) solution, et d'autres meilleurs y ont été
ajoutées... dont la tienne (merci si c'est toi qui l'y a mise).



---------------------------------------
import unicodedata

def cleanString(s):
"""Removes all accents from the string"""
if isinstance(s,str):
s = unicode(s,"utf8","replace")
s=unicodedata.normalize('NFD',s)
return s.encode('ascii','ignore')
---------------------------------------

A++
Jan


Avatar
Jan Vorwerk
Laurent Pointal a écrit , le 20.06.2007 09:12:
Salut à tous,

J'écris une fonction de recherche dans des noms de fichiers, et le
problème est bien sûr de trouver le nom "sauvés" quand on cherche
"sauve" ou vice-versa.

Après bien des recherches infructueuses, j'ai trouvé une
solution...alors je me suis dit que je vous ferais bien partager ma
trouvaille (j'avais aussi mis à jour un wiki sur le web il y a qq
semaines):


Wiki pythonfr...

http://wikipython.flibuste.net/moin.py/JouerAvecUnicode#head-1213938516c633958921591439c33d202244e2f4


Il y a ma première (mauvaise) solution, et d'autres meilleurs y ont été
ajoutées... dont la tienne (merci si c'est toi qui l'y a mise).


Oui, c'était moi effectivement... je ne retrouvais plus le site...


A++
Jan