Quelqu'un sait transformer une chaine en la meme chaine mais sans accents?
ex : ôéèà -> oeea
il y t il une fonction style uppercase ?
merci
Quelqu'un sait transformer une chaine en la meme chaine mais sans accents?
ex : ôéèà -> oeea
il y t il une fonction style uppercase ?
merci
Aucune réponse ?
Actuellement j'ai écrit :
Mais je voulais savoir s'il y a une méthode plus élégante ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 sTemp := AnsiReplaceStr (sTemp,'é','e'); sTemp := AnsiReplaceStr (sTemp,'è','e'); sTemp := AnsiReplaceStr (sTemp,'ô','o'); sTemp := AnsiReplaceStr (sTemp,'ï','i'); ...
J'ai pas trouvé de fonctions toutes faites mais en voici une perso inspirée de celle-ci.
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 function EnleveAccents(AText : String) : string; var Char_Accents,Char_Sans_Accents : string; I,index : Integer; begin Char_Accents := 'ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ'; Char_Sans_Accents := 'aaaaaaaaaaaaooooooooooooeeeeeeeecciiiiiiiiuuuuuuuuynn'; For i := 1 to Length(AText) do begin index := Pos(AText[i],Char_Accents); If Index > 0 then begin AText[i] := Char_Sans_Accents[Index]; end; end; Result := AText; end;
merci, je prend
on peut l'ecrire comme ca aussi
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 function EnleveAccents(AText : String) : string; const Char_Accents = 'ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ'; Char_Sans_Accents = 'aaaaaaaaaaaaooooooooooooeeeeeeeecciiiiiiiiuuuuuuuuynn'; var I : Integer; sTemp : String; begin sTemp := AText; For i := 1 to Length(Char_Accents) do sTemp := StringReplace(sTemp,Char_Accents[i],Char_Sans_Accents[i],[rfReplaceAll]); Result := sTemp; end;
Modérateur Delphi
Le guide du bon forumeur :
- Les règles du forum tu liras
- La FAQ et les tutoriels tu consulteras
- La fonction Recherche tu utiliseras
- Google tu vénèreras
__________
Rayek World : Youtube Facebook
Ca serait peut-être mieux si la fonction retournait les caractères dans leur casse de départ ? On peut ensuite utiliser LowerCase ou UpperCase si on veut la changer...
Partager