Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Contribuez
Contribuez Proposez vos articles, cours, tutoriels, questions/réponses pour les FAQ, sources et autres ressources pour la rubrique Web ainsi que ses sous-rubriques.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 15/05/2008, 10h41   #1
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 144
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 144
Points : 45 316
Points : 45 316
Par défaut [SRC][fonction de librairie]Deux versions de replace

Une première version pour un remplacement à la volée d'une série de caractères individuels prédéfinis:
Attention l'ordre des deux chaines prédéfinies est capital !!
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<script type="text/javascript">
function replaceSpec(Texte){
var Chaine="ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ"
Chaine=Chaine.split('')
TabOut=new Array()
for (i=0;Chaine[i];i++){
		TabOut.push(new RegExp(Chaine[i],"g"))
		}
TabIn="AAAAAAaaaaaaOOOOOOooooooEEEEeeeeCcIIIIiiiiUUUUuuuuyNn";
TabIn=TabIn.split('');
 
RepTexte=Texte;
for (i=0;TabIn[i];i++){
    RepTexte=RepTexte.replace(TabOut[i],TabIn[i])
    }		
return RepTexte
 }   
</script>
Utilisation:

Code :
1
2
3
 
var TestTexte="ÀÁÂÒÓÔÕÖØòÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÒÓÔÕÖØòÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ"
alert(replaceSpec(TestTexte))
Une seconde version qui peux permettre de remplacer des caractères à la demande ou des mots passés dasn un Hash Avec leur remplacement
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<script type="text/javascript">
function replaceHash(HasH,Texte){
TabOut=new Array();
TabIn=new Array();
 
for(elt in HasH){
 
      TabOut.push(new RegExp(elt,"g"));
      TabIn.push(HasH[elt]);
		}
RepTexte=Texte;
for (i=0;TabIn[i];i++){
    RepTexte=RepTexte.replace(TabOut[i],TabIn[i])
    }		
return RepTexte
</script>
 }
Son utlisation pour une série de caractères est possible, mais lourde:
Code :
1
2
 TestTexte="ÀÁÂÒÓÔÕÖØòÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÒÓÔÕÖØòÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ"
alert(replaceHash({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ç":"C","ç":"c","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","ÿ":"y","Ñ":"N","ñ":"n"},TestTexte))
Elle est plutot conçue pour ce genre d'utilisation:
Code :
1
2
var TestTexte="j'adore les bananes"
alert(replaceHash({"adore":"abore","bananes":"haricots verts"},TestTexte))
à noter que l'on pourrait aussi passer en paramètre le g et le i de la regEXP
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/05/2008, 17h35   #2
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 144
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 144
Points : 45 316
Points : 45 316
Attention toutes fois à la différence d'interprétation entre IE et Gecko based (FFX ...) pour les caractères spéciaux ...

Par exemple:

le crochet :

sous IE : /[[]/ matche le crochet ouvrant
sous FFX: /\[/ pour le même resultat
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h55.


 
 
 
 
Partenaires

Hébergement Web