Supprimer les accents d'une variable

iicarus Messages postés 4 Date d'inscription dimanche 16 octobre 2005 Statut Membre Dernière intervention 7 novembre 2005 - 16 oct. 2005 à 14:43
jetmix Messages postés 19 Date d'inscription jeudi 3 juin 2004 Statut Membre Dernière intervention 15 septembre 2010 - 24 août 2010 à 18:54
Bonjour,
Je suis en train de faire un petit dev sur un bandeau de navigation de site.
Mon problème est le suivant:
je récupere le contenu d'un champ de recherche afin de lancer une requête au travers d'une api. Cependant, le moteur qui est derrière ne gère pas les caractères accentués.
Comment faire pour traiter ma chaine et convertir les é, è, ê en simple e ?
Si quelqu'un à une piste, je suis prenneur!
D'avance, merci

9 réponses

Knolan Messages postés 79 Date d'inscription dimanche 9 février 2003 Statut Membre Dernière intervention 18 juin 2007
16 oct. 2005 à 15:43
Salut,

Tu mets en majuscule et pui en minuscule, ca te supprimera les accents :)

Je connais pas la fonction exacte, mais ca doit être du style: toupper, tolower



Voilou

Knolan

\o/ Merci de penser à accepter ^_^
0
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 12
16 oct. 2005 à 16:08
râté, test à l'appuie : "éèçà" donne "ÉÈÇÀ" .. retente encore ;)

peg'
0
Knolan Messages postés 79 Date d'inscription dimanche 9 février 2003 Statut Membre Dernière intervention 18 juin 2007
16 oct. 2005 à 16:11
bouuuuhhhh


ca marche en VB

il triche dans flash ca existe pas normalement les majuscules accentuées


0
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 12
16 oct. 2005 à 16:18
Ben oui, mais VB fais pas de mise en page .. Flash si ;)

Peg'
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
iicarus Messages postés 4 Date d'inscription dimanche 16 octobre 2005 Statut Membre Dernière intervention 7 novembre 2005
2 nov. 2005 à 11:37
sous vb ,j'avais un script de ce type pour faire cette opération:
Find MatchCase RegExp "[ÁÀÂÄÃÅ]"
Replace All SelectText "A"
Find MatchCase RegExp "[áàâäãå]"
Replace All SelectText "a"
Find MatchCase RegExp "[ÉÈÊË]"
Replace All SelectText "E"
Find MatchCase RegExp "[éèêë]"
Replace All SelectText "e"
Find MatchCase RegExp "[ÍÌÎÏ]"
Replace All SelectText "I"
Find MatchCase RegExp "[íìîï]"
Replace All SelectText "i"
Find MatchCase RegExp "[ÓÒÔÖÕ]"
Replace All SelectText "O"
Find MatchCase RegExp "[óòôöõ]"
Replace All SelectText "o"
Find MatchCase RegExp "[ÚÙÛÜ]"
Replace All SelectText "U"
Find MatchCase RegExp "[úùûü]"
Replace All SelectText "u"
Find MatchCase RegExp "[ÿý]"
Replace All SelectText "y"
Find MatchCase "Æ"
Replace All SelectText "Ae"
Find MatchCase "æ"
Replace All SelectText "ae"
Find MatchCase "Ç"
Replace All SelectText "C"
Find MatchCase "ç"
Replace All SelectText "c"
Find MatchCase "Ñ"
Replace All SelectText "N"
Find MatchCase "ñ"
Replace All SelectText "n"
Find MatchCase "Ý"
Replace All SelectText "Y"

si vous saviez comment tester la présence d'un caractère dans une variable,et si il est conforme au test le remplacer par un autre
0
iicarus Messages postés 4 Date d'inscription dimanche 16 octobre 2005 Statut Membre Dernière intervention 7 novembre 2005
2 nov. 2005 à 11:37
sous vb ,j'avais un script de ce type pour faire cette opération:
Find MatchCase RegExp "[ÁÀÂÄÃÅ]"
Replace All SelectText "A"
Find MatchCase RegExp "[áàâäãå]"
Replace All SelectText "a"
Find MatchCase RegExp "[ÉÈÊË]"
Replace All SelectText "E"
Find MatchCase RegExp "[éèêë]"
Replace All SelectText "e"
Find MatchCase RegExp "[ÍÌÎÏ]"
Replace All SelectText "I"
Find MatchCase RegExp "[íìîï]"
Replace All SelectText "i"
Find MatchCase RegExp "[ÓÒÔÖÕ]"
Replace All SelectText "O"
Find MatchCase RegExp "[óòôöõ]"
Replace All SelectText "o"
Find MatchCase RegExp "[ÚÙÛÜ]"
Replace All SelectText "U"
Find MatchCase RegExp "[úùûü]"
Replace All SelectText "u"
Find MatchCase RegExp "[ÿý]"
Replace All SelectText "y"
Find MatchCase "Æ"
Replace All SelectText "Ae"
Find MatchCase "æ"
Replace All SelectText "ae"
Find MatchCase "Ç"
Replace All SelectText "C"
Find MatchCase "ç"
Replace All SelectText "c"
Find MatchCase "Ñ"
Replace All SelectText "N"
Find MatchCase "ñ"
Replace All SelectText "n"
Find MatchCase "Ý"
Replace All SelectText "Y"

si vous saviez comment tester la présence d'un caractère dans une variable,et si il est conforme au test le remplacer par un autre
0
Knolan Messages postés 79 Date d'inscription dimanche 9 février 2003 Statut Membre Dernière intervention 18 juin 2007
2 nov. 2005 à 12:02
Salut,

Comme tu le dis toi meme ... sous vb ...

Knolan

\o/ Merci de penser à accepter ^_^
0
iicarus Messages postés 4 Date d'inscription dimanche 16 octobre 2005 Statut Membre Dernière intervention 7 novembre 2005
7 nov. 2005 à 10:52
C'est bon, j'ai trouvé une solution bien qu'un peu brute, elle a le merite de fonctionner.
Je la laisse au cas ou quelqu'un en aurait besoin.
Merci pour votre aide.
[CODE]
String.prototype.replace = function(search_str, new_str) {
var chaine = this;
var i = 0;
while ((i=chaine.indexOf(search_str, i)) != -1) {
chaine = chaine.substring(0, i)+new_str+chaine.substring(i+search_str.length);
i += new_str.length;
}
return (chaine);
};
;
find = find.replace("à", "a");
find = find.replace("á", "a");
find = find.replace("â", "a");
find = find.replace("ä", "a");
find = find.replace("ñ", "n");
find = find.replace("é", "e");
find = find.replace("è", "e");
find = find.replace("ê", "e");
find = find.replace("í", "i");
find = find.replace("ï", "i");
find = find.replace("ú", "u");
find = find.replace("ü", "u");
find = find.replace("ó", "o");
find = find.replace("ô", "o");
find = find.replace("ö", "o");
trace(find);
0
jetmix Messages postés 19 Date d'inscription jeudi 3 juin 2004 Statut Membre Dernière intervention 15 septembre 2010
24 août 2010 à 18:54
Ma version en AS3 (la fonction peut être déclarée en public static dans une classe).

var accentsTab:Array = [
[["à","á","â","ä"], "a"],
[["è","é","ê","ë"], "e"],
[["ù","ú","û","ü"], "u"],
[["ò","ó","ô","ö"], "o"],
[["ì","í","î","ï"], "i"],
[["ñ"], "n"]
];
function removeAccents(chaine:String):String {
for each (var letterTab:Array in accentsTab) {
var letterAccentsTab:Array = letterTab[0];
var letter:String = letterTab[1];
for each (var letterAccent:String in letterAccentsTab) {
chaine = chaine.split(letterAccent).join(letter);
chaine = chaine.split(letterAccent.toUpperCase()).join(letter.toUpperCase());
}
}
return chaine;
}


Utilisation :
trace(removeAccents("Élémentaire! À bientôt Noël."));
Sortie :
Elementaire! A bientot Noel.
0
Rejoignez-nous