Remplacer des caractères précédant d'autres caractères avec JavaScript
Concept et utilisation
La fonction strReplaceBefore()
permet de remplacer un ou plusieurs caractère(s) précédant un au plusieurs autre(s) caractère(s) spécifique(s).
Fonction
strReplaceBefore()
Dans une chaine de caractères de départ, remplace une chaine de caractères précédant une chaine de caractères suivante, par une chaine de caractères remplaçante, et retourne la chaine modifiée.
- Syntaxe
strReplaceBefore(chaine_depart, chaine_precedente, chaine_remplacante, chaine_suivante, trouver_partout);
- Paramètres
chaine_depart
(String)Le paramètre
chaine_depart
de la fonctionstrReplaceBefore()
définit la chaine de caractères de départ dans laquelle effectuer un remplacement.chaine_precedente
(String)Le paramètre
chaine_precedente
de la fonctionstrReplaceBefore()
définit la chaine de caractères qui sera remplacée par une chaine de caractère de remplacement lorsqu'elle est suivie par une chaine de caractères spécifique.chaine_remplacante
(String)Le paramètre
chaine_remplacante
de la fonctionstrReplaceBefore()
définit la chaine de caractères qui remplace la chaine de caractères précédant une chaine de caractères spécifiques.chaine_suivante
(String)Le paramètre
chaine_suivante
de la fonctionstrReplaceBefore()
définit la chaine de caractères qui doit suivre la chaine de caractères à remplacer.trouver_partout
(Boolean)Le paramètre
trouver_partout
de la fonctionstrReplaceBefore()
définit par une valeur booléenne si toutes les occurrences contenues dans la chaine de départ doivent être remplacées.Si ce paramètre est omis, la valeur par défaut
false
sera utilisée.
Exemple de remplacements d'une chaine de caractères précédée par une autre
var chaine_depart = "aabbbaabbbaa";
var chaine_precedente = "bb";
var chaine_remplacante = "xx";
var chaine_suivante = "aa";
strReplaceBefore(chaine_depart, chaine_precedente, chaine_remplacante, chaine_suivante);
// Renvoie : 'aabxxaabbbaa'
var remplacer_toutes = true;
strReplaceBefore(chaine_depart, chaine_precedente, chaine_remplacante, chaine_suivante, remplacer_toutes);
// Renvoie : 'aabxxaabxxaa'
Code source de la fonction
function strReplaceBefore(a,b,c,d,e){
return a.replace(new RegExp(b+"[^"+b+"]{"+b.length+"}",(e?'g':'')),c+d);
}
Dernière mise à jour le .