replace qui ne remplace qu'une occurrence
Salut !
Quelqu'un saurait me dire pourquoi cette instruction ne remplace pas toutes les occurrences de "red", "green" et "blue" ? On dirait que lorsqu'une occurrence en suit une autre elle n'est pas remplacée...
Code:
1 2 3
| var subject = "red black green blue yellow orange red blue pink orange white green";
var pattern = /(?:^|[^\w])(red|green|blue)(?:[^\w]|$)/g;
var result = subject.replace(pattern, "%"); |
J'aimerais tant que possible éviter d'avoir à faire :
Code:
1 2 3 4 5 6 7
| var result = null;
var replacement = subject;
do {
result = replacement;
replacement = result.replace(pattern, "%");
}
while(result != replacement); |