Salut
Je voulais savoir s'il existe une fonction qui permet de passer les String en majuscule en supprimant tous les accents. Je n'ai vraiment pas envie de la cr�er moi-m�me.
Salut
Je voulais savoir s'il existe une fonction qui permet de passer les String en majuscule en supprimant tous les accents. Je n'ai vraiment pas envie de la cr�er moi-m�me.
Bonjour,
J'avais fait une m�thode � voir l� :
http://www.developpez.net/forums/vie...t=caract%E8res
a+
tu peux par exemple utiliser la m�thode replace :
Mais il y a sans doute d'autres fa�ons de faire...
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4 taString.replace("é", "e"); taString.replace("è", "e"); ...
Merci pour vos r�ponses, mais je crois que je n'ai pas �t� assez pr�cis. Je souhaite �galement enlever tous les caract�res unicodes, sp�ciaux et autres pour ne garder que les lettres de A � Z (en majuscule).
Il y a aussi des JTextArea dans l'application et je dois enlever les sauts de lignes, tabulation ...
J'ai commenc� � faire ma m�thode � la main mais pour les caract�res unicodes je bloque.
Merci pour les coups de main
Et en utilisant les expressions r�guli�res...
exemple :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3 result = result.replaceAll("(-|'|:|_|!|?|;|,|§|(|))", ""); .....
Ce que j'ai fait c'est :
Mais le probl�me c'est qu'il reste tous les caract�res unicode. Et l� je ne parviens pas � les enlever.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 public static String toUpperCaseSansAccent(String chaine) { if (chaine == null) return null; String temp = ""; for (int i=0; i < chaine.length(); i++) { if (! ((chaine.charAt(i) < 48 && chaine.charAt(i) != 32) || chaine.charAt(i) == 255 || chaine.charAt(i) == 208 || chaine.charAt(i) == 209 || chaine.charAt(i) == 215 || chaine.charAt(i) == 216 || (chaine.charAt(i) < 65 && chaine.charAt(i) > 57) || (chaine.charAt(i) < 192 && chaine.charAt(i) > 122) || (chaine.charAt(i) < 65 && chaine.charAt(i) > 57))) { temp = temp + chaine.charAt(i); } } temp = temp.toUpperCase(); temp = temp.replace('Ý', 'Y'); temp = temp.replaceAll("Ù | Ú | Û | Ü", "U"); temp = temp.replaceAll("Ò | Ó | Ô | Õ | Ö", "O"); temp = temp.replaceAll("Ì | Í | Î | Ï", "I"); temp = temp.replaceAll("È | É | Ê | Ë", "E"); temp = temp.replace('Ç', 'C'); temp = temp.replaceAll("À | Á | Â | Ã | Ä | Å | Æ", "A"); return temp; }
Je progresse mais ce n'est pas termin�. Moi qui ne voulais pas d�velopper la fonction ...![]()
J'ai un peu le m�me probl�me que toi : je suis en train de d�velopper un petit g�n�rateur de code HTML et les caract�re � accent etc ne sont pas tol�r�s.
Je souhaiterais les convertir.
Sur
http://www.chez.com/starshoot/html/caractere.htm
ils nous expliquent que c'est � partir du code ascii>128 que les caract�res deviennent "sp�ciaux".
Mais avec l'exemple de la faq pour r�cup�rer le code ascii d'un caract�re, le code que je r�cup�re ne correspond pas � ce qui est indiqu� dans le tableau...
--> le caract�re � par exemple retourne 63 au lieu de 233.![]()
Quelqu'un peut m'�xpliquer comment je peux r�cup�rer le code de mes char dans la bonne base?![]()
D�sol� de vous avoir emb�t� :
r�pond � ma question
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3 String chaine = "é"; System.out.println((int) chaine.charAt(0));![]()
Partager