JavaScript replace函数参数解析

replace第一个参数一般放置的是正则表达式或字符串,用来匹配想要替换的文本;第二个参数一般我们放入的是字符串,用来替换掉正则匹配到的文本。

第一种方法一般是放一个字符串在第二个参数中,直接用于替换所匹配到的字符;

第二种方法比较高阶的技巧,第一个参数为正则表达式,第二个参数使用$字符可以取得捕获括号中的内容,再进行相关操作。

       字符替换文本:

       $& 与正则相匹配的字符串

       $` 匹配字符串左边的字符

       $’ 匹配字符串右边的字符

       $1,$2,$,3,…,$n 匹配结果中对应的分组匹配结果  

还有第三种方法, 给第二个参数传入匿名函数,函数的返回值用做替换的字符。

匿名函数有4个参数可以传入,当然,这些参数都不是必须要传的。

  第一个参数:正则所匹配到的字符;

  第二个参数:捕获到的字符;

  第三个参数:正则匹配到的每段字符的第一个字符的索引;

  第四个参数:用于匹配的字符串主体;

例子:

第一种:

"abrde".replace("r", "c");

"abrde".replace(/r/, "c");

第二种:

var sStr='讨论一下正则表达式中的replace的用法';
sStr.replace(/正则表达式/,'《$&》');
// 得到:"讨论一下《正则表达式》中的replace的用法"
var sStr='讨论一下正则表达式中的replace的用法';
sStr.replace(/正则表达式/,'《$`》');
// 得到:"讨论一下《讨论一下》中的replace的用法"
var sStr='讨论一下正则表达式中的replace的用法';
sStr.replace(/正则表达式/,"《$'》");
// 得到:"讨论一下《中的replace的用法》中的replace的用法"
var sStr='讨论一下正则表达式中的replace的用法';
sStr.replace(/(正则)(.+?)(式)/,"《$1$2<$3>");
// 得到:"讨论一下《正则》表达<式>中的replace的用法"

第三种:

字符串:&lt;h1&gt;哈哈哈&lt;/h1&gt;

正则表达式:/&([^&;]+);/g

a:&lt b:lt c:0 d:&lt;h1&gt;哈哈哈&lt;/h1&gt;

a:&gt b:gt c:6 d:&lt;h1&gt;哈哈哈&lt;/h1&gt;

a:&lt b:lt c:14 d:&lt;h1&gt;哈哈哈&lt;/h1&gt;

a:&gt b:gt c:21 d:&lt;h1&gt;哈哈哈&lt;/h1&gt;


  
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值