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 相关文章推荐
网站页面自动跳转实现方法PHP、JSP(上)
Aug 01 Javascript
jquery Mobile入门—多页面切换示例学习
Jan 08 Javascript
JavaScript实现按照指定长度为数字前面补零输出的方法
Mar 19 Javascript
jquery实现触发时更新下拉列表内容的方法
Dec 02 Javascript
js复制内容到剪贴板代码,js复制代码的简单实例
Oct 27 Javascript
BootStrap CSS全局样式和表格样式源码解析
Jan 20 Javascript
js实现3D图片展示效果
Mar 09 Javascript
JS实现的简单表单验证功能示例
Oct 13 Javascript
React-intl 实现多语言的示例代码
Nov 03 Javascript
Vue.js devtool插件安装后无法使用的解决办法
Nov 27 Javascript
vue-cli history模式实现tomcat部署报404的解决方式
Sep 06 Javascript
基于Layui自定义模块的使用方法详解
Sep 14 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
DC动漫人物排行
2020/03/03 欧美动漫
PHP 单引号与双引号的区别
2009/11/24 PHP
ThinkPHP模板输出display用法分析
2014/11/26 PHP
PHP ajax 异步执行不等待执行结果的处理方法
2015/05/27 PHP
Symfony的安装和配置方法
2016/03/17 PHP
php通过执行CutyCapt命令实现网页截图的方法
2016/09/30 PHP
php实现的简单数据库操作Model类
2016/11/16 PHP
javascript实现的动态添加表单元素input,button等(appendChild)
2007/11/24 Javascript
jquery实现图片滚动效果的简单实例
2013/11/23 Javascript
JS清空多文本框、文本域示例代码
2014/02/24 Javascript
JavaScript中对循环语句的优化技巧深入探讨
2014/06/06 Javascript
详解JavaScript的变量和数据类型
2015/11/27 Javascript
Node.js+Express配置入门教程详解
2016/05/19 Javascript
vue2.0开发实践总结之疑难篇
2016/12/07 Javascript
javascript删除html标签函数cIsHTML
2017/01/09 Javascript
$.browser.msie 为空或不是对象问题的多种解决方法
2017/03/19 Javascript
详解vue-cli 构建项目 vue-cli请求后台接口 vue-cli使用axios、sass、swiper
2018/05/28 Javascript
小程序指纹验证的实现代码
2018/12/04 Javascript
Python标准库内置函数complex介绍
2014/11/25 Python
Python解析nginx日志文件
2015/05/11 Python
Python判断直线和矩形是否相交的方法
2015/07/14 Python
Python简单连接MongoDB数据库的方法
2016/03/15 Python
Python通过调用有道翻译api实现翻译功能示例
2018/07/19 Python
Django渲染Markdown文章目录的方法示例
2019/01/02 Python
Python面向对象特殊属性及方法解析
2020/09/16 Python
pycharm 使用tab跳出正在编辑的括号(){}{}等问题
2021/02/26 Python
海蓝之谜(LA MER)澳大利亚官方商城:全球高端奢华护肤品牌
2017/10/27 全球购物
Sephora丝芙兰马来西亚官方网站:国际化妆品购物
2018/03/15 全球购物
高中毕业生自我鉴定范文
2013/09/26 职场文书
优秀学生自我鉴定范例
2013/12/18 职场文书
家长对小学生的评语
2014/01/28 职场文书
作文批改评语大全
2014/04/23 职场文书
环保倡议书50字
2014/05/15 职场文书
建筑工程质量通病防治方案
2014/06/08 职场文书
2015年教务工作总结
2015/05/23 职场文书
SpringBoot集成Redis,并自定义对象序列化操作
2021/06/22 Java/Android