js正则表达式之replace函数用法
前端  /  管理员 发布于 4年前   305
正则表达式replace()函数:
此函数用指定的字符串替换字符串中与正则表达式匹配的子字符串。
返回值是一个替换后的新字符串。
这里只介绍正则表达式的相关操作,其他替换操作可以参阅javascript的String对象的replace()方法一文。
语法结构:
stringObject.replace(regexp,replacement)
参数列表如下:
参数名称 | 语义解释 |
regexp | 必需。RegExp对象。 |
replacement | 必需。一个字符串值。规定了替换文本或生成替换文本的函数。 |
实例代码:
<script>var str="I love jb51";var reg=/j(?:\w)+1/;console.log(str.replace(reg,"girls"));</script>
以上代码可以将字符串中能够被正则表达式匹配的子字符串替换为"girls"。
特别说明:
replacement可以是字符串,也可以是函数。如果它是字符串,那么每个匹配都将由字符串替换。
replacement中的$字符可以具有特定的含义,如下表所示:
字符 | 语义解释 |
$1、$2、...、$9 | 与 regexp 中的第1到第9个子表达式相匹配的文本。 |
$& | 与regexp相匹配的子串。 |
$$ | 直接量符号。 |
$` | input字符串中lastMatch之前的文本。 |
$' | input字符串中lastMatch之后的文本。 |
如果replacement是函数,具体用法可以参阅javascript的replace()第二个参数为函数时的参数一章节。
实例代码:
<script>var str=".net.cn"; var newStr=str.replace(/(\w+),(\w+)/,"$2 $1"); console.log(newStr);</script>
输出:net jb51
函数功能:replace函数返回根据正则表达式进行文字替换后的字符串的复制。
函数格式:stringObj.replace(rgExp, replaceText)
参数:字符串stringObj,rgExp正则表达式,replaceText所替换的内容
本文涉及的内容包括字符串创建,正则表达式隐式创建对象,创建正则表达式,进行replace方法的使用匹配
示例代码:
<html> <script language="javascript" type="text/javascript"> //要替换的字符串的内容 var objStr=new String("Designed By Androidyue"); //隐式创建正则表达式对象 var reG=/e/w?/g;//全局匹配(g为全局匹配参数),匹配e或者e?内容 var re=/e/w?/;//没有指定参数,值进行一次匹配 with(document){ write("进行匹配前的字符串"+objStr+"<br>"); write("进行了全局匹配的字符串"+objStr.replace(reG,"**")+"<br>"); write("进行匹配,没有指定参数值进行一次匹配"+objStr.replace(re,"××")); } </script> </html>
关于正则表达式我会写几篇文章介绍,当然最好的方法就是自己尝试写一些东西
123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..路人 在
php中使用hyperf框架调用讯飞星火大模型实现国内版chatgpt功能示例中评论 教程很详细,如果加个前端chatgpt对话页面就完美了..Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号