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 相关文章推荐
在 IE 中调用 javascript 打开 Excel 表
Dec 21 Javascript
CSS常用网站布局实例
Apr 03 Javascript
js类的静态属性和实例属性的理解
Oct 01 Javascript
jquery form 加载数据示例
Apr 21 Javascript
JavaScript动态修改网页元素内容的方法
Mar 21 Javascript
CSS+jQuery实现简单的折叠菜单
Dec 20 Javascript
详解JavaScript按概率随机生成事件
Aug 02 Javascript
jQuery图片缩放插件smartZoom使用实例详解
Aug 25 jQuery
js 毫秒转天时分秒的实例
Nov 17 Javascript
vue组件name的作用小结
May 23 Javascript
vue实现在一个方法执行完后执行另一个方法的示例
Aug 25 Javascript
详解Vue 项目中的几个实用组件(ts)
Oct 29 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的面试题集,附我的答案和分析(一)
2006/11/19 PHP
PHP迅雷、快车、旋风下载专用链转换代码
2010/06/15 PHP
PHP判断数据库中的记录是否存在的方法
2014/11/14 PHP
php数组键名技巧小结
2015/02/17 PHP
详解PHP中的8个魔术常量
2020/07/06 PHP
用于table内容排序
2006/07/21 Javascript
利用js跨页面保存变量做菜单的方法
2008/01/17 Javascript
jquery插件 cluetip 关键词注释
2010/01/12 Javascript
ext combox 下拉框不出现自动提示,自动选中的解决方法
2010/02/24 Javascript
jquery load()在firefox(火狐)下显示不正常的解决方法
2011/04/05 Javascript
jQuery回车实现登录简单实现
2013/08/20 Javascript
js判断选择时间不能小于当前时间的示例代码
2013/09/24 Javascript
获取鼠标在div中的相对位置的实现代码
2013/12/30 Javascript
js判断某个方法是否存在实例代码
2015/01/10 Javascript
全面介绍javascript实用技巧及单竖杠
2016/07/18 Javascript
JavaScript使用FileReader实现图片上传预览效果
2020/03/27 Javascript
vue-cli构建项目下使用微信分享功能
2018/05/28 Javascript
微信小程序实现单列下拉菜单效果
2019/04/25 Javascript
详解jenkins自动化部署vue
2019/05/14 Javascript
JS实现拖拽元素时与另一元素碰撞检测
2020/08/27 Javascript
Python 匹配任意字符(包括换行符)的正则表达式写法
2009/10/29 Python
Python 关于反射和类的特殊成员方法
2017/09/14 Python
Python使用指定字符长度切分数据示例
2019/12/05 Python
pandas中ix的使用详细讲解
2020/03/09 Python
基于python图像处理API的使用示例
2020/04/03 Python
python 已知三条边求三角形的角度案例
2020/04/12 Python
Python中实现一行拆多行和多行并一行的示例代码
2020/09/06 Python
英国美发和美容产品商城:HQhair
2019/02/08 全球购物
全球性的奢侈品梦工厂:Forzieri(福喜利)
2019/02/20 全球购物
双十佳事迹材料
2014/01/29 职场文书
《理想》教学反思
2014/02/17 职场文书
民事诉讼代理授权委托书范本
2014/10/08 职场文书
2014年纠风工作总结
2014/12/08 职场文书
邀请函模板
2015/02/02 职场文书
工作收入证明范本
2015/06/12 职场文书
呼啸山庄读书笔记
2015/06/29 职场文书