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 相关文章推荐
Google Map Api和GOOGLE Search Api整合实现代码
Jul 18 Javascript
jQuery的实现原理的模拟代码 -2 数据部分
Aug 01 Javascript
jquery根据name属性查找的小例子
Nov 21 Javascript
Javascript中this的用法详解
Sep 22 Javascript
JQuery勾选指定name的复选框集合并显示的方法
May 18 Javascript
JS制作手机端自适应缩放显示
Jun 11 Javascript
简介AngularJS中使用factory和service的方法
Jun 17 Javascript
JavaScript判断表单为空及获取焦点的方法
Feb 12 Javascript
浅谈layer的iframe弹窗给里面的标签赋值的问题
Nov 10 Javascript
layui监听下拉选框选中值变化的方法(包含监听普通下拉选框)
Sep 24 Javascript
详解vue3.0 diff算法的使用(超详细)
Jul 01 Javascript
解决vue项目中遇到 Cannot find module ‘chalk‘ 报错的问题
Nov 05 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将英文数字转换为阿拉伯数字实例讲解
2019/01/28 PHP
php使用redis的几种常见操作方式和用法示例
2020/02/20 PHP
JavaScript 事件系统
2010/07/22 Javascript
JavaScript中instanceof与typeof运算符的用法及区别详细解析
2013/11/19 Javascript
javascript中打印当前的时间实现思路及代码
2013/12/18 Javascript
javascript创建createXmlHttpRequest对象示例代码
2014/02/10 Javascript
js实现字符串的16进制编码不加密
2014/04/25 Javascript
基于jQuery实现选取月份插件附源码下载
2015/12/28 Javascript
酷炫jQuery全屏3D焦点图动画效果
2016/03/22 Javascript
浅析javascript异步执行函数导致的变量变化问题解决思路
2016/05/13 Javascript
JS克隆,属性,数组,对象,函数实例分析
2016/11/26 Javascript
想学习javascript JS和jQuery哪个重要 先学哪个
2016/12/11 Javascript
ES6中Generator与异步操作实例分析
2017/03/31 Javascript
详解npm 配置项registry修改为淘宝镜像
2018/09/07 Javascript
vue单文件组件lint error自动fix与styleLint报错自动fix详解
2019/01/08 Javascript
微信小程序实现下拉刷新动画
2019/06/21 Javascript
用vue 实现手机触屏滑动功能
2020/05/28 Javascript
python简单线程和协程学习心得(分享)
2017/06/14 Python
详解 Python 读写XML文件的实例
2017/08/02 Python
python实现桌面气泡提示功能
2019/07/29 Python
Python交互环境下打印和输入函数的实例内容
2020/02/16 Python
python高级特性简介
2020/08/13 Python
前端实现弹幕效果的方法总结(包含css3和canvas的实现方式)
2018/07/12 HTML / CSS
StubHub德国:购买和出售门票
2017/09/06 全球购物
在线购买澳大利亚设计师手拿包和奢华晚装手袋:Olga Berg
2019/03/20 全球购物
sleep()方法和wait()方法的区别是什么
2012/11/17 面试题
经理管理专业毕业自荐书范文
2014/02/12 职场文书
员工工作表现评语
2014/04/26 职场文书
教师四风问题对照检查材料
2014/09/26 职场文书
创先争优宣传标语
2014/10/08 职场文书
2014年乡镇纪委工作总结
2014/12/19 职场文书
个人求职信格式范文
2015/03/20 职场文书
会议营销主持词
2015/07/03 职场文书
宿舍管理制度范本
2015/08/07 职场文书
酒桌上的祝酒词
2015/08/12 职场文书
Redis keys命令的具体使用
2022/06/05 Redis