Virer les accents d'un texte

Soyez le premier à donner votre avis sur cette source.

Vue 5 221 fois - Téléchargée 342 fois

Description

ce source réponds à une question du forum

Source / Exemple :


dans le zip

Conclusion :


http://www.progzed.com
http://u.p.s.free.fr

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
12
Date d'inscription
vendredi 24 janvier 2003
Statut
Membre
Dernière intervention
8 février 2010

Beaucoup plu srapide ;)

function EnleverAccents(const SChaine: string): string;
var
PResult: PChar;
PStr: PChar;
TmpChaine: string;
begin
TmpChaine := SChaine;
Result := TmpChaine;
PResult := PChar(Result);
PStr := PChar(TmpChaine);
while PStr[0] <> #0 do
begin
case PStr[0] of
#192..#197: PResult[0] := 'A';
#199: PResult[0] := 'C';
#200..#203: PResult[0] := 'E';
#204..#207: PResult[0] := 'I';
#209: PResult[0] := 'N';
#210..#214: PResult[0] := 'O';
#138: PResult[0] := 'S';
#217..#220: PResult[0] := 'U';
#159, #221: PResult[0] := 'Y';
#142: PResult[0] := 'Z';
#224..#229: PResult[0] := 'a';
#231: PResult[0] := 'c';
#232..#235: PResult[0] := 'e';
#236..#239: PResult[0] := 'i';
#241: PResult[0] := 'n';
#242..#246: PResult[0] := 'o';
#154: PResult[0] := 's';
#249..#252: PResult[0] := 'u';
#253, #255: PResult[0] := 'y';
#158: PResult[0] := 'z';
end;
Inc(PResult);
Inc(PStr);
end;
end;
Messages postés
28
Date d'inscription
vendredi 14 février 2003
Statut
Membre
Dernière intervention
24 septembre 2012

J'ai plus court comme fonction :

// Enlève les accents d'une chaîne de caractères
function EnleverAccents(Chaine: String; Espace: Boolean = True): String;
const
AvecAccent = 'àáâãäåæçèéêëìíîïñòóôõöøšùúûüýžþÿœÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÑÒÓÔÕÖØŠÙÚÛÜÝŽÞߌ€£$¥';
SansAccent = 'aaaaaaaceeeeiiiinoooooosuuuuyztyeAAAAAAACEEEEIIIINOOOOOOSUUUUYZTSEELSY';
var
i: Integer;
begin
Result := Chaine;
for i := 0 to Length(AvecAccent) - 1 do
Result := AnsiReplaceStr(Result, AvecAccent[i], SansAccent[i]);
if Espace then
Result := AnsiReplaceStr(Result, ' ', '_');
end;
Messages postés
4
Date d'inscription
mardi 17 février 2004
Statut
Membre
Dernière intervention
18 octobre 2005

Avez-vous finalement trouvé une solution ?
Moi je suis confrontée au prob aujourd'hui avec une base orable derrière, je ne trouve pas de solution

Merci
Messages postés
455
Date d'inscription
mardi 24 juillet 2001
Statut
Modérateur
Dernière intervention
10 mars 2009

j'y ai pensé aussi
avec un case of

mais j'ai fait expres de laisser ainsi pour la comprehension la methode
Messages postés
4
Date d'inscription
mercredi 22 mai 2002
Statut
Membre
Dernière intervention
23 janvier 2004

en utilisant les codes ascii t'aurais pu économiser un peu de code ... mais elle fait quand même très bien son boulot. A+
Afficher les 9 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.