Description Trouve un motif d'expression régulière dans une chaîne et remplace les passages trouvés par la chaîne texte du second paramètre.
La méthode replace() utilise l'objet RegExp pour définir le motif et la propriété $1..$9 permettant de repérer les sous-chaînes trouvées.
Si le paramètre motif est une chaîne, le remplacement fonctionne également, mais s'arrête à la première occurence trouvée.
Voir aussi les méthodes de chaînes de caractères utilisant les expressions régulières match() et split()
Equivalent dans d'autres langages
Equivalent en PHP à str_replace() : Fonction qui remplace un bout de chaîne par un autre.
Equivalent en PHP à preg_replace() : Fonction qui remplace un bout de chaîne trouvé par RegExp par un autre.
Exemple 1 : Surligne un mot
Code source
<script> var chaine="Les chiens et les chiennes, les chats et les oiseaux"; var reg=newRegExp("(chien)", "g"); document.write("Chaîne d'origine : " + chaine + "<br>"); document.write("Chaîne traitée : " + chaine.replace(reg,"<span style='background-color:yellow'>$1</span>") + "<br>");
</script>
Résultat
Emulation de la console
Explication
Cet exemple montre comment surligner une occurrence d'un mot.
Le motif (chien) de l'expression régulière permet de trouver tous les mots (chien).
Dans l'appel à replace(), le second paramètre indique comment remplacer chien.
Le symbole $1 représente la première expression entre parenthèse du motif.
Donc, l'expression "<span style='background-color:yellow'>$1</span>" remplace toutes les occurrences chien par "<span style='background-color:yellow'>chien</span>"
Consultez l'objet RegExp pour la définition du motif.
Exemple 2 : Replace avec une chaîne
Code source
<script type="text/javascript"> var str="Remplacement de JS avec ToutJS"; console.log(str);
str=str.replace("JS", "JavaScript"); console.log(str);
str=str.replace("JS", "JavaScript"); console.log(str);