Pourquoi utilisent-ilsau lieu de citations des barres obliques dans la chaîne JavaScript remplacer la méthode
/
au lieu de
'
dans la chaîne JavaScript remplacer()? Par exemple:
document.write(str.replace(/hi/, "hey"));
Pourquoi utilisent-ilsau lieu de citations des barres obliques dans la chaîne JavaScript remplacer la méthode
/
au lieu de
'
dans la chaîne JavaScript remplacer()? Par exemple:
document.write(str.replace(/hi/, "hey"));
car // désigne une expression régulière, qui est une version beaucoup plus puissante de recherche de chaîne/remplacement qu'un simple Remplacer ("x", "y")
, mais soutient également des modèles simples .
var a = "xxx";
var b = a.replace(/x/,'y');
alert(b); //alerts "yxx"
ajouter le modificateur g pour remplacer serait globaly être:
b = a.replace(/x/g,'y');
alert(b); //alerts "yyy"
Vous pouvez également ajouter le modificateur i pour le rendre insensible à la casse.
var a = "XXX";
b = a.replace(/x/gi,'y');
alert(b); // alerts "yyy";
https://developer.mozilla.org/En/Core_JavaScript_1.5_Guide/Regular_Expressions
Le JavaScript method replace()
permet à la fois une chaîne de caractères et un RegExp object comme la partie de recherche.
Et dans votre exemple une expression régulière est utilisée (RegExp literal syntax) bien qu'une chaîne simple suffise.
c'est exactement ça, +1 –
Bonne réponse complète! +1 – Cerebrus