js使用Replace结合正则替换重复出现的字符串功能示例
今天想把网站上关于用户搜索资料后的结果列表进行处理,如同百度搜索一样,加入我搜索框中输入“我要日日发网络”,点击搜索按钮所得的结果列表中将会出现“我要日日发网络”字符串为红色。
我今天想到用js来进行处理,就是利用js内的replace函数对结果列表内的字符串进行指定字符串的替换工作,开始我是这样写的
<script type="text/JavaScript" language="javascript"> <!-- function ReplaceStr(str) { var content = document.getElementById("content").innerHTML; content = content.replace(str, "<font color='red'>" + str + "</font>"); document.getElementById("content").innerHTML = content; } ReplaceStr("日日发"); // --> </script>
最后运行页面发现只替换掉了第一个“日日发”字符串,其他“日日发”字符串没有被替换掉,开始百思不得其解,后来在朋友的帮助下了解到js内的replace和c#内的replace有很大的不同,js内的replace默认的只是对字符串进行一次扫描。那么利用js的replace函数如何才能够达到字符串全部替换的效果呢? 这里我们就必须引入正则式了的,修改后的js函数如下所示:
<script type="text/javascript" language="javascript"> <!-- function ReplaceStr(str) { var content = document.getElementById("content").innerHTML; content = content.replace(new RegExp(str,"gi"), "<font color='red'>" + str + "</font>"); document.getElementById("content").innerHTML = content; } ReplaceStr("日日发"); // --> </script>
这两者一比较就很清楚问题出在哪里了的,利用正则式很轻松地解决了问题,在这里 new RegExp(str,"gi") 这句话是什么意思呢?
后来查阅了一些资料,g - 从头至尾扫描完一次整个字符串,i- 不区分替换字符串的大小写。那么整个语句的意思就好理解了的。
PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:
JavaScript正则表达式在线测试工具:
http://tools.jb51.net/regex/javascript
正则表达式在线生成工具:
http://tools.jb51.net/regex/create_reg
更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript正则表达式技巧大全》、《JavaScript替换操作技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》、《JavaScript中json操作技巧总结》、《JavaScript错误与调试技巧总结》及《JavaScript数学运算用法总结》
希望本文所述对大家JavaScript程序设计有所帮助。
您可能感兴趣的文章:
- Java使用正则表达式截取重复出现的XML字符串功能示例
- JS使用replace()方法和正则表达式进行字符串的搜索与替换实例
- js Replace结合正则 替换掉重复出现的字符串
- JS使用正则表达式实现关键字替换加粗功能示例
- JS使用replace()方法和正则表达式进行字符串的搜索与替换实例
- JS使用replace()方法和正则表达式进行字符串的搜索与替换实例
- C#正则表达式匹配与替换字符串功能示例
- js使用正则实现ReplaceAll全部替换的方法
- JS字符串替换函数全部替换方法 JS 正则表达式如何使用变量
- js使用正则实现ReplaceAll全部替换的方法
- js 全部替换replace() 使用正则表达式
- js使用正则实现ReplaceAll全部替换的方法
- JS和C#实现的两个正则替换功能示例分析
- JS基于正则截取替换特定字符之间字符串操作示例
- 在JS中,使用正则表达式,用指定字符替换字符串前后空格
- 在java中使用正则表达式,截取重复出现的XML字符串
- 不用正则实现js中replace全局替换的功能
- JS字符串替换函数全部替换方法 JS 正则表达式如何使用变量
- js使用正则实现ReplaceAll全部替换的方法
- PHP 字符串正则替换函数preg_replace使用说明