欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

js正则表达式之replace函数用法

程序员文章站 2022-05-29 13:55:12
正则表达式replace()函数: 此函数用指定的字符串替换字符串中与正则表达式匹配的子字符串。 返回值是一个替换后的新字符串。 这里只介绍正则表达式的相关操作,其他...

正则表达式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="jb51,net"; 
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> 

关于正则表达式我会写几篇文章介绍,当然最好的方法就是自己尝试写一些东西