Serait-ce si long que �a ? Je m'explique : l'alphabet latin est n� dans un
peuple qui n'avait gu�re besoin qu'un peu plus d'une vingtaine de lettres
(disons 26 ! les Italiens qui n'utilisent pas le J vont crier, c'est pas
grave !). Comme on a voulu appliquer ce pauvre alphabet � bien des langues
qui n'avaient rien � voir avec celle parl�e par les paysans du latium, on a
imagin� un nombre phantastique de variations ! D'autres alphabets, la grande
majorit�, n'ont pas eu � �tre adapt�s. Ce qui fait qu'en fin de compte,
seule une (relativement) petite partie de l'Unicode est expos�e � des
variations. Ainsi, le gros pav� des id�ogrammes ne varie pas
accentuellement.

-----Message d'origine-----
De : Erik Mazoyer [mailto:[EMAIL PROTECTED]]
Envoy� : mardi 18 juin 2002 17:49
� : '[EMAIL PROTECTED]'
Objet : RE: suppression des accents


Tout d�pend de ton courage :-)

Travaillant souvent avec l'unicode, je me suis souvent dit que l'on pourrait
�crire "facilement" une class java qui retirerait les variation autour d'un
caract�re.
En effet tous les caract�res unicode ont une description d�taill�s
voir : http://www.unicode.org/Public/UNIDATA/UnicodeData.txt
<http://www.unicode.org/Public/UNIDATA/UnicodeData.txt>

0055;LATIN CAPITAL LETTER U;Lu;0;L;;;;;N;;;;0075;
0075;LATIN SMALL LETTER U;Ll;0;L;;;;;N;;;0055;;0055
00D9;LATIN CAPITAL LETTER U WITH GRAVE;Lu;0;L;0055 0300;;;;N;LATIN CAPITAL
LETTER U GRAVE;;;00F9;
00F9;LATIN SMALL LETTER U WITH GRAVE;Ll;0;L;0075 0300;;;;N;LATIN SMALL
LETTER U GRAVE;;00D9;;00D9

Le format du fichier maintient les correspondances entre la minuscule et la
majuscule et entre le caract�re accentu� et le caract�re non accentu�. C'est
cette seconde correspondance qui te permettra d'�crire ta transformation.
Maintenant, beaucoup de courage et beaucoup de lecture sur
http://www.unicode.org <http://www.unicode.org>  te fera d�couvrir le monde
merveilleux des caract�res et que la fonction qui enl�ve les accents est
loin d'�tre simple quand on l'envisage dans la globalit�.

Cordialement,

--------------------------------------------------------------------
Erik Mazoyer, Chef de projet
HyperOffice
6, rue Jacques Daguerre - 92565 Rueil-Malmaison Cedex
T�l. 01 41 96 96 76
Fax 01 41 96 96 77
M�l  [EMAIL PROTECTED]



-----Message d'origine-----
De: Laurent Delaforge [mailto:[EMAIL PROTECTED]]
Date: mardi 18 juin 2002 17:14
�: [EMAIL PROTECTED]
Objet: RE: suppression des accents


n'y a t'il pas d'autre moyen qu'une table de correspondance ?

-----Message d'origine-----
De : Zeljko VELAJA [mailto:[EMAIL PROTECTED]]
Envoy� : mardi 18 juin 2002 17:04
� : [EMAIL PROTECTED]
Objet : RE: suppression des accents


Voici un d�but de r�ponse (tr�s optimisable). Il existe sans doute des
packages propri�taires qui font �a, mais si ton input ne concerne que le
fran�ais, une petite routine comme �a est tout-aussi valable.

public String toUpperCaseDeleteAccents(String arg)
{
    StringBuffer sbuff = new StringBuffer();
    arg = arg.toLowerCase(); // pour tout avoir en minuscule au d�but

    for(int i=0; i<arg.length(); i++)
    {
        char c = arg.charAt(i);

        switch(c)
        {
            case '�': case '�': case '�': case '�': sbuff.append('e');
break;
            case '�': case '�': sbuff.append('a'); break;
            case '�': case '�': sbuff.append('i'); break;
            case '�': sbuff.append('o'); break;
            case '�': case '�': case '�': sbuff.append('u'); break;
            case '�': sbuff.append('c'); break;
            default: sbuff.append(c);
        }
    }

    return sbuff.toString().toUpperCase();
}

-----Message d'origine-----
De : Laurent Delaforge [mailto:[EMAIL PROTECTED]]
Envoy� : mardi 18 juin 2002 16:30
� : java strasbg
Objet : suppression des accents


Bonjour,

Je cherche � passer une String en majuscule, tout en supprimant les accents.
J'ai donc tout naturellement essay� la m�thode toUpperCase(Locale) de
String.
Mais �a ne supprime pas les accents (j'ai essay� avec Locale.ENGLISH,
Locale.US et Locale.UK)

Quelqu'un aurait une id�e ?

Merci d'avance !

Laurent


Répondre à