C++ suppression des accents

Fermé
Vivi - 9 nov. 2006 à 16:23
mamiemando Messages postés 33446 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 décembre 2024 - 12 nov. 2006 à 21:58
Bonjour,


J'aimerai supprimé tous les accents contenu dans un string, y a t'il de fonction dans la bibliothèque C++ permettant de la faire ?

Sinon quelle méthodes faudrait-il utiliser ?

Merci!
A voir également:

3 réponses

mamiemando Messages postés 33446 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 décembre 2024 7 811
12 nov. 2006 à 21:58
Effectivement je me suis craquée sur le assign j'ai lu trop vite.
Tu peux le faire avec une boucle for (sachant qu'alors tu peux directement manipuler un char*):
void suppr_accent(std::string & s){
  std::size_t len = s.size();
  for(std::size_t i = 0; i<len;++i){
    if(s[i] == 'é' || s[i] == 'ê' || s[i] == 'è') s[i] = e;
    else if(s[i] == 'û' || s[i] == 'ù') s[i] = u;
    else if(s[i] == 'â' || s[i] == 'à') s[i] = a;
    ...
  }
}

Bonne chance
1
mamiemando Messages postés 33446 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 décembre 2024 7 811
9 nov. 2006 à 20:25
0
Bonjour,

Je n'ai pas bien compris comment on pouvait supprimer les accents avec la fonction assign.
Cela supprime t'il également les accents "exotiques" de ce genre là : ě č ř... bref tous les accents pouvant exister dans ce monde ?

Merci
0