Maison  >  Article  >  interface Web  >  Explication détaillée de l'utilisation du replace() de JavaScript lors du passage de la fonction

Explication détaillée de l'utilisation du replace() de JavaScript lors du passage de la fonction

云罗郡主
云罗郡主avant
2018-10-19 14:11:192074parcourir

Cet article vous apporte une explication détaillée de l'utilisation du replace() de JavaScript lors du passage de la fonction. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

Explication détaillée de lutilisation du replace() de JavaScript lors du passage de la fonction

Utilisation de base :

<script>
var str = "a1ba2b";
var reg = /a.b/g;
str = str.replace(reg,function(a,b){
	console.log(a);
	console.log(b);
	return b == 0 ? a.replace("a","0") : a.replace("b","3");
});
console.log(str);

/*
  输出结果为:
  a1b
  0//第一次匹配到a1b,将a置为0.
  a2b
  3//第二次匹配到a2b,将b置为3.
  01ba23//返回经过修改后的字符串
*/
/*
  function(a,b,c)一共可以传入3个参数,第一个为匹配的字符串,第二个为匹配字符串的起始位置,
  第三个为调用replace方法的字符串本身。可以缺省c或b、c。
*/
</script>

Utilisation lors de l'utilisation d'un groupe de capture :

Exigence : Convertir le nombre à gauche du flottant point pointer vers chaque Ajouter une virgule à trois chiffres ?

var str = '12000000.11';
var res = str.replace(/(\d)(?=(\d{3})+\.)/g, function(s1, s2) {
	console.log(arguments) // (\d{3})+ 虽然有+但只算一个捕获组
	return s2 + ','; // 替换匹配成功的返回值
});
console.log(res) // 12,000,000.11
  
/* 
arguments的值为(匹配成功两次):
  ["2", "2", "000", 1, "12000000.11"]
  ["0", "0", "000", 4, "12000000.11"]
  第一项:匹配成功返回的结果(预测断言匹配成功的值不会出现在匹配结果中)
  第二项:第一个捕获组对应的值
  第三项:第二个捕获组对应的值
  第四项:匹配字符串的索引值
  第五项:原始字符串 
*/

Analyse :
?=exp : Assertion prédictive, la position où l'assertion apparaît doit correspondre à exp, sinon la correspondance échoue et la longueur ne sera pas occupée une fois la correspondance réussie.

/(d)(?=(d{3})+.)/g effectue une correspondance globale. La première correspondance de chaîne réussie est : "2000000." 0000."

Ce qui précède est une introduction détaillée à l'utilisation du replace() de JavaScript lors du passage de la fonction. Si vous souhaitez en savoir plus sur le

Tutoriel vidéo JavaScript, veuillez faire attention au site Web PHP chinois.


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer