[java] remplacer accents du type é

karine -  
 -WalakaZ- -
Bonjour !

J'aimerais savoir comment faire pour remplacer dans un mot les accents (par exemple é) par leur équivalent (é).

Est-ce qu'il y a une fonction qui fait ça en java ?
Ou il faut faire un petit algo ?

Si quelqu'un a une piste ...
Merci!

10 réponses

  1. Guillaume
     
    Sinon il y a aussi une API open source qui fait çà très bien.
    Il s'agit de la librairie Apache Commons Lang 2.0+.
    La classe org.apache.commons.lang.StringEscapeUtils traite justement de ce problème.

    Exemple :

    import org.apache.commons.lang.StringEscapeUtils;
    
    public class MonTest
    {
        /**
         * @param args
         */
        public static void main(String[] args)
        {
            String maChaineHtml = "Eléphant";
            String maChaine = StringEscapeUtils.unescapeHtml(maChaineHtml);
            System.out.println(maChaine);
        }
    }
    
    9
  2. karine
     
    Ah j'avais pas vu, c'est le message qui a interprété mon truc.

    Je veux remplacer & eacute ; par é.

    Des idées ?

    merci
    0
  3. Romain
     
    apprend a travailler avec la tres utile doc de l'api java ;p

    replace(CharSequence target, CharSequence replacement)
    Replaces each substring of this string that matches the literal target sequence with the specified literal replacement sequence.
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. karine
     
    Merci beaucoup Romain !

    Mais comment tu utilises l'api, tu cherches un peu au pif ?

    Ca m'a pas l'air très pratique ...
    0
    1. jebok Messages postés 371 Date d'inscription   Statut Membre 51
       
      Pour utiliser l'API, tu cherches dans la ou les classes que tu utilises.
      Par exemple, si tu manipules des String (pas ceux avec des ficelles) tu cherches dans java.lang.string etc.
      mais il est vrai que si tu ne sais pas où chercher l'api n'est pas forcément d'une grande aide...
      0
  6. Romain
     
    Moi je trouve la solution a quasiment tout mes pb la dedans. Par exemple tu cherchais a faire une action sur une chaine, mais tu savais pas si yavai qq chose de tout fait dans java : Tu as une gigantesque liste avec tous les objets java sur le coté, tu descend juska string et tu as toutes les methodes expliquees
    0
  7. phloam
     
    regardes ca c'est ca que tu veux faire? C'est une applet en ligne qui remplace tous les accents par leur equivalent html :

    http://mypage.bluewin.ch/les-secrets-du-web/caracteres-special.html
    0
    1. guian
       
      serieu les gens pouvez pas aider en répondant au question posées plutot que de renvoyé vers l'API...
      la plupart des personne qui pose des question son passé par l'API java en premier et sont ensuite venu demander...
      d'autant plus que cette fonction a été écrite mille fois sur le net ... ( mais je l'ai encore jamais vu implémentée dans le sdk java... a vérifier je me trompe peut etre... )

      bref :

      https://www.rgagnon.com/javadetails/java-0307.html

      c'est ce qui était recherché.
      0
  8. manu
     
    moi je cherche a faire la meme chose mais à l'envers... quelqu'un a un algo ?
    0
  9. -WalakaZ-
     
    replace("& eacute", "é");

    En espérant t'avoir aidé.
    (Désolé pour les un ans de retard :s)
    0
  10. jebok Messages postés 371 Date d'inscription   Statut Membre 51
     
    Je ne comprends pas exactement ce que tu veux remplacer et par quoi. Tu as écris "comment remplacer 'é' par 'é' ? !!!
    -1