Signaler

Remplacer caractères [Résolu]

Posez votre question Sinistrus 817Messages postés mercredi 12 décembre 2007Date d'inscription 23 juin 2017 Dernière intervention - Dernière réponse le 12 juin 2017 à 13:37 par Sinistrus
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 
Utile
+2
plus moins
Bonjour,

C'est surtout une expression régulière :
alert("L'éléphant perd son poil".replace(/ |É|À|È|Ê|'/g, '-'));
Donnez votre avis
Utile
+0
plus moins
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 :)
Donnez votre avis
Utile
+0
plus moins
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_ 250Messages postés mardi 25 avril 2017Date d'inscription 23 juin 2017 Dernière intervention - 12 juin 2017 à 13:06
var valeur = document.getElementById("La_Marque").value.replace(/ |É|À|È|Ê|'/g, '-');

document.getElementById("Fr_Marque").value = valeur;
Répondre
Sinistrus 817Messages postés mercredi 12 décembre 2007Date d'inscription 23 juin 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...
Répondre
Donnez votre avis

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !