Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

FONCTION : REMPLACER LES CARRACTÈRES ACCENTUÉS PAR LEUR ÉQUIVALENT NON ACCENTUÉS D'UN TEXTE GRÀCE À STRTR, FONCTION SIMILAIRE À CELLE DE PHP


Information sur la source

Catégorie :Chaînes de caratères Classé sous : accents, enlever, strtr, remplacer, supprimer Niveau : Débutant Date de création : 03/08/2007 Date de mise à jour : 06/08/2007 08:12:50 Vu : 8 384

Note :
Aucune note

Commentaire sur cette source (5)
Ajouter un commentaire et/ou une note

Description

Comme l'indique le titre, cette fonction permet la suppression des accents dans un texte. Je devais développer un site de e-commerce en ASP, et je ne connaissais que le php :) . J'ai donc reproduit la fonction strtr de PHP afin qu'elle puisse fonctionner avec ASP.

PS : Je suis ouvert à toutes critiques, mais soyez indulgent, j'ai commencé l'ASP y a deux semaines lol...
 

Source

  • 'Fonction strtr similaire à celle de PHP
  • 'Par Francis Hilaire
  • 'http://www.prometee-creation.com
  • '@param1 => chaîne : chaîne à transformer
  • '@param2 => chaîne : chaîne de caractères à remplacer
  • '@param3 => chaîne : chaîne de caractères de remplacement
  • function strtr(chaine, strFrom, strTo)
  • Dim c0, c1, i
  • for i = 1 to len(strFrom)
  • 'récupération d'un caractère
  • 'de la chaîne strFrom à la
  • 'position i
  • c0 = mid(strFrom, i, 1)
  • 'Si la longueur de la chaîne
  • 'strTo dépasse celle de strFrom
  • 'alors on remplace par rien
  • if i > len(strTo) Then
  • c1 = ""
  • else
  • c1 = mid(strTo, i, 1)
  • end if
  • 'Remplacement des caractères
  • 'dans la chaîne de départ
  • chaine = Replace(chaine, c0, c1)
  • next
  • 'On renvoie la chaîne sans accents
  • strtr = chaine
  • end function
  • '@param1 => chaîne : chaîne à transformer
  • '@return => chaîne : retourne la chaîne traduite
  • function removeAccents(chaine)
  • Dim accent, noaccent
  • accent = "ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûýýþÿ"
  • noaccent = "AAAAAAACEEEEIIIIDNOOOOOOUUUUYbsaaaaaaaceeeeiiiidnoooooouuuyyby"
  • removeAccents = strtr(chaine, accent, noaccent)
  • end function
'Fonction strtr similaire à celle de PHP
'Par Francis Hilaire
'http://www.prometee-creation.com
'@param1 => chaîne : chaîne à transformer
'@param2 => chaîne : chaîne de caractères à remplacer
'@param3 => chaîne : chaîne de caractères de remplacement

function strtr(chaine, strFrom, strTo)
	Dim c0, c1, i

	for i = 1 to len(strFrom)
		
		'récupération d'un caractère
		'de la chaîne strFrom à la
		'position i
		c0 = mid(strFrom, i, 1)
		
		'Si la longueur de la chaîne
		'strTo dépasse celle de strFrom
		'alors on remplace par rien
		if i > len(strTo) Then
			c1 = ""
		else
			c1 = mid(strTo, i, 1)
		end if
		
		'Remplacement des caractères
		'dans la chaîne de départ
		chaine = Replace(chaine, c0, c1)
		
	next
	
	'On renvoie la chaîne sans accents
	strtr = chaine
	
end function

'@param1 => chaîne : chaîne à transformer
'@return => chaîne : retourne la chaîne traduite
function removeAccents(chaine)
	Dim accent, noaccent

	accent   = "ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûýýþÿ"
	noaccent = "AAAAAAACEEEEIIIIDNOOOOOOUUUUYbsaaaaaaaceeeeiiiidnoooooouuuyyby"
	
	removeAccents = strtr(chaine, accent, noaccent)

end function


Conclusion

Son fonctionnement :

'chaîne à traduire :
chaine = "Cécile se promène à Orléans"
chaine = removeAccents(chaine)

'résultat : "Cecile se promene a Orleans"

Bon là c'est pas très parlant, mais cette source peut être utile dans le cas d'url rewriting par exemple où dans ce cas, on couplera cette fonction avec une autre qui enlève les caractères spéciaux et remplace les espaces par des tirets.

Ou encore dans le cas où on gère des fichiers et qu'il faut qu'ils soit bien formatés au niveau du nom...
 

Historique

03 août 2007 14:41:36 :
--
03 août 2007 14:43:13 :
--
06 août 2007 08:12:51 :
Remise des bonnes variables dans le code... :$

Commentaires et avis

signaler à un administrateur
Commentaire de ylomer le 06/08/2007 10:57:16

Super. ça va bien me servir. Seul petit hic : j'aurais fait une seule fonction au lieu de 2. fonction removeAccents avec dedans la boucle for i = 1 to len(accent)... puis if i > len(noaccent)... et enfin renvoie de la chaine résultat dans removeAccents. M'enfin rien n'est faux et ça va être utile.

signaler à un administrateur
Commentaire de promeythey le 06/08/2007 10:59:46

ça aurais été bien, mais je préfère séparer les fonctions pour pouvoir les réutiliser ailleurs...

signaler à un administrateur
Commentaire de TB_code le 06/08/2007 12:45:37

ravi très interessant!!!

signaler à un administrateur
Commentaire de ghuysmans99 le 20/08/2007 14:50:14

bravo!

signaler à un administrateur
Commentaire de MrKhal le 08/01/2008 15:53:39

Super ton code !

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Remplacer * d'access en ASP "truc*" ?? [ par tipnic ] Bonjour, j'ai un petit souci pour éxecuter maes requêtes car dans ma requête je voudrais trouver les champs de la table Access comportant un mot qui e Help : Bases de données [ par carine ] Help! Je n'arrive ni à ajouter, ni à modifier,ni à supprimer des données dans une base access sur mon site asp.J'ai pourtant fait tout comme sur les a AJOUTER, SUPPRIMER ET MODIFIER dans une base de donnée depuis ASP..!! [ par Scepo ] Bonjour,Est-ce-que quel qu'un peut m'aider PLEASE...Si quel qu'un peut m'envoyer un exemple si possible, car sa fait plus de 2 semaines que J'arrive p Comment éviter la suppression du 0 [ par metos ] Dans du code ASP je désire attribuer une valeur à une variable. la valeur peu contenir un 0 au début.Le problème c'est que le 0 au début du nombre et Suppression fichiers réseau [ par pandaman ] Bonjour,je développe actuellement un produit asp.net,mais je suis bloqué par un probleme de sécurité, en effet une des pages sert à supprimer des fich remplacer une table [ par akimodo ] je voudraissoit en asp pouvoir remplacer le contenu d une base dsn(completement en une fois pas table par table)ou via vba depuis une base access 97 m Ajouter, modifier, supprimer et naviguer parmi les enregistrements d'une base de données Access [ par croquette ] Mon code ne fonctionne tout simplement pas. Je cherche comment faire pour ajouter, supprimer et modifier les enregistrement d'une base de données. N supprimer les lignes vides d'1 TextArea [ par michaelw ] Salut,je cherche un moyen de supprimer les lignes vides contenues dans un textarea.Quelqu'un peut-il m'aider ?MErci gérer les accents [ par romain3395 ] Bonjour,j'ai un problème quand je visualise mon site sur des navigateurs autres que internet explorer, par ex, sur le navigateur internet d'un Mac, qu accents sur les dropDownList [ par romain3395 ] Bonjour,lorsque je mets un "é" dans un champ d'une <:asp dropDownList> celui ci n'est pas interprété comme de l'html, il ne m'affiche pas


Nos sponsors

Sondage...

CalendriCode

Octobre 2008
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,296 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.