JS中实现replaceAll的方法(实例代码)


Posted in Javascript onNovember 12, 2013

第一次发现JavaScript中replace() 方法如果直接用str.replace("-","!") 只会替换第一个匹配的字符.
而str.replace(/\-/g,"!")则可以全部替换掉匹配的字符(g为全局标志)。

replace()
The replace() method returns the string that results when you replace text matching its first argument
(a regular expression) with the text of the second argument (a string).
If the g (global) flag is not set in the regular expression declaration, this method replaces only the first
occurrence of the pattern. For example,

var s = "Hello. Regexps are fun.";s = s.replace(/\./, "!"); // replace first period with an exclamation pointalert(s);

produces the string “Hello! Regexps are fun.” Including the g flag will cause the interpreter to
perform a global replace, finding and replacing every matching substring. For example,

var s = "Hello. Regexps are fun.";s = s.replace(/\./g, "!"); // replace all periods with exclamation pointsalert(s);

yields this result: “Hello! Regexps are fun!”

所以可以用以下几种方式.:
string.replace(/reallyDo/g, replaceWith);
string.replace(new RegExp(reallyDo, 'g'), replaceWith);

string:字符串表达式包含要替代的子字符串。
reallyDo:被搜索的子字符串。
replaceWith:用于替换的子字符串。

<script type="text/javascript">  
String.prototype.replaceAll = function(reallyDo, replaceWith, ignoreCase) {  
    if (!RegExp.prototype.isPrototypeOf(reallyDo)) {  
        return this.replace(new RegExp(reallyDo, (ignoreCase ? "gi": "g")), replaceWith);  
    } else {  
        return this.replace(reallyDo, replaceWith);  
    }  
}  
</script> 
Javascript 相关文章推荐
javascript与CSS复习(《精通javascript》)
Jun 29 Javascript
Prototype的Class.create函数解析
Sep 22 Javascript
利用jquery的获取JS文件中的字符串内容
Feb 14 Javascript
jQuery学习笔记之创建DOM元素
Jan 19 Javascript
基于JS快速实现导航下拉菜单动画效果附源码下载
Oct 27 Javascript
js实现三级联动效果(简单易懂)
Mar 27 Javascript
underscore之Chaining_动力节点Java学院整理
Jul 10 Javascript
ReactNative实现图片上传功能的示例代码
Jul 11 Javascript
javascript+css3开发打气球小游戏完整代码
Nov 28 Javascript
浅谈vue的props,data,computed变化对组件更新的影响
Jan 16 Javascript
JS获取今天是本月第几周、本月共几周、本月有多少天、是今年的第几周、是今年的第几天的示例代码
Dec 05 Javascript
javaScript 实现重复输出给定的字符串的常用方法小结
Feb 20 Javascript
jquery.validate的使用说明介绍
Nov 12 #Javascript
javascript 函数及作用域总结介绍
Nov 12 #Javascript
Javascript之this关键字深入解析
Nov 12 #Javascript
js hover 定时器(实例代码)
Nov 12 #Javascript
JavaScript的setAttribute兼容性问题解决方法
Nov 11 #Javascript
javascript实用小函数使用介绍
Nov 11 #Javascript
JavaScript动态插入script的基本思路及实现函数
Nov 11 #Javascript
You might like
php SQL防注入代码集合
2008/04/25 PHP
php 破解防盗链图片函数
2008/12/09 PHP
解析PHP函数array_flip()在重复数组元素删除中的作用
2013/06/27 PHP
PHP编程实现微信企业向用户付款的方法示例
2017/07/26 PHP
PHP基于curl模拟post提交json数据示例
2018/06/22 PHP
PHP PDOStatement::errorCode讲解
2019/01/31 PHP
解放web程序员的输入验证
2006/10/06 Javascript
js借助ActiveXObject实现创建文件
2013/09/29 Javascript
jquery实现图片随机排列的方法
2015/05/04 Javascript
情人节单身的我是如何在敲完代码之后收到12束玫瑰的(javascript)
2015/08/21 Javascript
简介EasyUI datagrid editor combogrid搜索框的实现
2016/04/01 Javascript
微信小程序之小豆瓣图书实例
2016/11/30 Javascript
浅析javascript中的Event事件
2016/12/09 Javascript
Ionic+AngularJS实现登录和注册带验证功能
2017/02/09 Javascript
vue学习之mintui picker选择器实现省市二级联动示例
2017/10/12 Javascript
JS使用正则表达式找出最长连续子串长度
2017/10/26 Javascript
vue侧边栏动态生成下级菜单的方法
2018/09/07 Javascript
使用webpack4编译并压缩ES6代码的方法示例
2019/04/24 Javascript
laravel-admin 与 vue 结合使用实例代码详解
2019/06/04 Javascript
bootstrap table插件动态加载表头
2019/07/19 Javascript
微信小程序tab切换可滑动切换导航栏跟随滚动实现代码
2019/09/04 Javascript
微信小程序实现点击导航条切换页面
2020/11/19 Javascript
[04:04]显微镜下的DOTA2第六期——电影级别的华丽团战
2014/06/20 DOTA
[15:15]教你分分钟做大人:狙击手
2014/10/30 DOTA
python监控网站运行异常并发送邮件的方法
2015/03/13 Python
python中使用zip函数出现错误的原因
2018/09/28 Python
Python 堆叠柱状图绘制方法
2019/07/29 Python
python读写文件write和flush的实现方式
2020/02/21 Python
详解Python IO编程
2020/07/24 Python
python爬虫泛滥的解决方法详解
2020/11/25 Python
美国在线纱线商店:Darn Good Yarn
2019/03/20 全球购物
小学生寒假家长评语
2014/04/16 职场文书
学习普通话的体会
2014/11/07 职场文书
优秀教育工作者事迹材料
2014/12/24 职场文书
五星级酒店前台接待岗位职责
2015/04/02 职场文书
学习党史心得体会2016
2016/01/23 职场文书