欢迎来到天天文库
浏览记录
ID:5837855
大小:31.50 KB
页数:6页
时间:2017-12-25
《javascript的replace方法与正则表达式讲解》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、javascript的replace方法与正则表达式讲解replace方法的语法是:stringobj.replace(rgexp replacetext) 其中stringobj是字符串(string),reexp可以是正则表达式对象(regexp)也可以是字符串 (string),replacetext是替代查找到的字符串。。为了帮助大家更好的理解,下面举个简单例子说明一下 < script language=" javascript" > var stringobj=" 终古人民共和国,终古人民" //替换错别字“
2、终古”为“中国” //并返回替换后的新字符 //原字符串stringobj的值没有改变 var newstr=stringobj.replace(" 终古" " 中国" ) alert(newstr) < /script> 比我聪明的你,看完上面的例子之后,会发现第二个错别字“终古”并没有被替换成“中国”,我们可以执行二次replace方法把第二个错别字“终古”也替换掉,程序经过改进之后如下: < script language=" javascript" > var stringobj=" 终古人民共和国
3、,终古人民" //替换错别字“终古”为“中国” //并返回替换后的新字符 //原字符串stringobj的值没有改变 var newstr=stringobj.replace(" 终古" " 中国" ) newstr=newstr.replace(" 终古" " 中国" ) alert(newstr) < /script> 我们可以仔细的想一下,如果有n的n次方个错别字,是不是也要执行n的n次方replace方法来替换掉错别字呢??呵,不用怕,有了正则表达式之后不用一个错别字要执行一次replace方
4、法。。程序经过改进之后的代码如下 < script language=" javascript" > var reg=new regexp(" 终古" " g" ) //创建正则regexp对象 var stringobj=" 终古人民共和国,终古人民" var newstr=stringobj.replace(reg " 中国" ) alert(newstr) < /script> 上面讲的是replace方法最简单的应用,不知道大家有没有看懂??下面开始讲稍微复杂一点的应用。。 大家在一些网站上搜
5、索文章的时候,会发现这么一个现象,就是搜索的关键字会高亮改变颜色显示出来??这是怎么实现的呢??其实我们可以用正则表达式来实现,具体怎么样实现呢?简单的原理请看下面的代码 < script language=" javascript" > var str=" 中华人民共和国,中华人民共和国" var newstr=str.replace(/(人)/g " < font color=red> $1< /font> " ) document.write(newstr) < /script> 上面的程序缺少互动性,我们再
6、改进一下程序,实现可以自主输入要查找的字符 < script language=" javascript" > var s=prompt(" 请输入在查找的字符" " 人" ) var reg=new regexp(" (" +s+" )" " g" ) var str=" 中华人民共和国,中华人民共和国" var newstr=str.replace(reg " < font color=red> $1< /font> " ) document.write(newstr) < /script> 可能大家
7、都会对$1这个特殊字符表示什么意思不是很理解,其实$1表示的就是左边表达式中括号内的字符,即第一个子匹配,同理可得$2表示第二个子匹配。。什么是子匹配呢??通俗点讲,就是左边每一个括号是第一个字匹配,第二个括号是第二个子匹配。。 当我们要把查找到的字符进行运算的时候,怎么样实现呢??在实现之前,我们先讲一下怎么样获取某一个函数的参数。。在函数function的内部,有一个 arguments集合,这个集合存储了当前函数的所有参数,通过arguments可以获取到函数的所有参数,为了大家理解,请看下面的代码 < script
8、 language=" javascript" > function test() { alert(" 参数个数:" +arguments.length) alert(" 每一个参数的值:" +arguments[0]) alert(" 第二
此文档下载收益归作者所有