[RESOLU] Erreur sur la fonction replace

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Erreur sur la fonction replace

Re: Erreur sur la fonction replace

par Shenryu » 05 mars 2012, 14:48

Salut,

La fonction replace prend une expression régulière en premier paramètre : http://www.toutjavascript.com/reference ... ef=replace

Code : Tout sélectionner

var str = "bonjour_a_tous"; str = str.replace(new RegExp("(_)", "g"), " "); window.alert(str);
De cette manière ça fonctionne ;)

++

[RESOLU] Erreur sur la fonction replace

par ladinho58 » 05 mars 2012, 12:27

Bonjour,

je souhaiterai récupérer une chaine de caractère rentrée en formulaire mais en remplaçant les "_" par des " ".
Pour cela, j'ai donc utilisé la fonction replace. Mais en l'utilisant, elle me supprime bien le premier underscore par l'espace, mais pas le reste.

[javascript]
var a = document.getElementById("id").value;
var b = document.getElementById("id").value;

var ent = a.substring(0, a.length-6 );
var col = b.substring(0, b.length-6);
alert (ent);
alert (col);

var offre_ent=ent.replace("_"," ");
var offre_col=col.replace("_"," ");
alert (offre_ent);
alert (offre_col);
[/javascript]

Au début je récupère la chaine de caractère que je souhaite : OK
Ensuite je ne récupère que la chaine en supprimant les 6 derniers caractères : OK
Enfin, je remplace les "_" par les " " : pas tout à fait OK

Au final je peux avoir ceci :
ent = bonjour_a_tous
offre_ent = bonjour a_tous

Donc ma question est la suivante : comment faire pour que tous les underscore soient remplacés par des espaces comme je le souhaite ?

Par avance, merci