Remplacer caractères [Résolu]

Sinistrus 852 Messages postés mercredi 12 décembre 2007Date d'inscription 15 novembre 2017 Dernière intervention - 12 juin 2017 à 11:09 - Dernière réponse : Sinistrus 852 Messages postés mercredi 12 décembre 2007Date d'inscription 15 novembre 2017 Dernière intervention
- 12 juin 2017 à 13:37
Bonjour à tous,

Je ne maitrise pas javascript mais je souhaiterais remplacer les caractères suivant par un tiret : "Espace,É,À,È,Ê,apostrophe" par "-"

Par exemple :
La_Marque = "L'éléphant perd son poil"
Fr_Marque = "L-elephant-perd-son-poil"

Pouvez-vous m'aider svp ?

function Marque() {
document.getElementById("Fr_Marque").value = document.getElementById('La_Marque').value;
}
Afficher la suite 
852Messages postés mercredi 12 décembre 2007Date d'inscription 15 novembre 2017 Dernière intervention

5 réponses

Répondre au sujet
Felice_ 266 Messages postés mardi 25 avril 2017Date d'inscription 20 juillet 2017 Dernière intervention - 12 juin 2017 à 11:24
+2
Utile
Bonjour,

C'est surtout une expression régulière :
alert("L'éléphant perd son poil".replace(/ |É|À|È|Ê|'/g, '-'));
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Felice_
Yuh12 186 Messages postés mercredi 7 mai 2014Date d'inscription 28 septembre 2017 Dernière intervention - 12 juin 2017 à 11:23
0
Utile
var myString="L'éléphant perd son poil";
myString=myString.replace(/ /g,"-"); // Pour les espaces
myString=myString.replace(/'/g, '-'); // Pour les apostrophes.


Et pour les accents tu peux faire quelque chose du style :
  
 // Ecriture des motifs à remplacer
   var regAccentA = new RegExp('[àâä]', 'gi');
   var regAccentE = new RegExp('[éèêë]', 'gi');


   // Application de la fonction replace() sur myString
   myString = myString.replace(regAccentA, 'a');
   myString = myString.replace(regAccentE, 'e');


J'ai trouvé cette solution ici :
http://www.analyste-programmeur.com/javascript/les-expressions-regulieres/javascript-replace

Le plus propre serait de faire une belle expression régulière (RegExp) qui comprendrais tous ces paramètres à la fois :)
Commenter la réponse de Yuh12
Sinistrus 852 Messages postés mercredi 12 décembre 2007Date d'inscription 15 novembre 2017 Dernière intervention - 12 juin 2017 à 11:42
0
Utile
2
Merci de vos réponses rapides Yuh et Felice...

Je n'arrives pas à l'intégrer à mon code.

La_Marque est la zone de texte ou je met mon texte, et Fr_Marque est la zone de texte qui récupère le regex de La_Marque...
En PHP c'est cool mais en javascript franchement je flanche grave !
Felice_ 266 Messages postés mardi 25 avril 2017Date d'inscription 20 juillet 2017 Dernière intervention - 12 juin 2017 à 13:06
var valeur = document.getElementById("La_Marque").value.replace(/ |É|À|È|Ê|'/g, '-');

document.getElementById("Fr_Marque").value = valeur;
Sinistrus 852 Messages postés mercredi 12 décembre 2007Date d'inscription 15 novembre 2017 Dernière intervention > Felice_ 266 Messages postés mardi 25 avril 2017Date d'inscription 20 juillet 2017 Dernière intervention - 12 juin 2017 à 13:37
Merci beaucoup Felice !
J'étais carrément à côté de la plaque lors de mes test...
Commenter la réponse de Sinistrus