Expressions réugulières [Résolu]

Signaler
Messages postés
262
Date d'inscription
mardi 26 février 2002
Statut
Membre
Dernière intervention
27 février 2012
-
Messages postés
262
Date d'inscription
mardi 26 février 2002
Statut
Membre
Dernière intervention
27 février 2012
-
Je n'arrive pas à remplacer dans un textarea un retour chariot + le tag [ligne] + un autre retour chariot !

Pourtant avec les expressions régulières sa serait ça :

<script>
var s="Ceci est la ligne\n[ligne]\nque j'essai d'insérer !\n";
var s1=s.replace(/\n\[ligne\]\n/gi,"\n-------------------\n");
alert(s+"\n"+s1);
</script>

Mais lorsque que c'est dans un textarea ça ne marche pas !

<form name=formulaire>
<textarea rows="13" name="champ" cols="46">Ceci est la ligne
[ligne]
que j'essai d'insérer !
</textarea></form>
<script>
var s = document.formulaire.champ.value
var s1=s.replace(/\n\[ligne\]\n/gi,"\n-------------------\n");
alert(s+"\n"+s1);
</script>

3 réponses

Messages postés
403
Date d'inscription
mercredi 19 avril 2006
Statut
Membre
Dernière intervention
7 août 2020
1
Désolé, petite erreur de précipitation, il fallait lire :

var s1=s.replace(/\r\n\[ligne\]\r\n/gi,"\r\n-------------------\r\n");
Messages postés
403
Date d'inscription
mercredi 19 avril 2006
Statut
Membre
Dernière intervention
7 août 2020
1
Bonjour,

Ton exemple fonctionne très bien sur FF, mais pas sur IE et Opéra.

Le retour chariot sur windows est généralement codé par \r\n, donc :

<form name=formulaire>
<textarea rows="13" name="champ" cols="46">Ceci est la ligne
[ligne]
que j'essai d'insérer !
</textarea></form>
<script>
var s = document.formulaire.champ.value
var s1=s.replace(/\r\n\[ligne\]\n/gi,"\n-------------------\r\n");
alert(s+"\n"+s1);
</script>

Par contre, attention, cet exemple ne fonctionne plus pour FF...

Bonne prog
Messages postés
262
Date d'inscription
mardi 26 février 2002
Statut
Membre
Dernière intervention
27 février 2012

merci, ça marche !

Fabiano13