js使用正则实现ReplaceAll全部替换的方法


Posted in Javascript onJuly 18, 2014

JS 字符串有replace() 方法。但这个方法只会对匹配到的第一个字串替换。 如下例:

<HTML>
<HEAD>
<TITLE> New Document </TITLE>
</HEAD>

<BODY>
<script>
var str = "wordwordwordword";
var strNew = str.replace("word","Excel");
alert(strNew);
</script>
</BODY>
</HTML>

如果要全部替换的话,JS 没有提供replaceAll这样的方法。使用正则可以达成Replace 的效果:

str.replace(/word/g,"Excel")g 的意义是:执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。

<HEAD>
<TITLE> New Document </TITLE>
<script>
function replaceAll(str)
{
if(str!=null)
str = str.replace(/word/g,"Excel")
return str;
}
</script>
</HEAD>

<BODY>
<script>
var str = "wordwordwordword";
var strNew = str.replace("word","Excel");
strNew = replaceAll(str);
alert(strNew);
</script>
</BODY>
</HTML>

以上写法有个类同的写法:

str.replace(new RegExp("word","gm"),"Excel")g 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。

m 执行多行匹配。

除此之外,也可以添加 Stirng对象的原型方法:

String.prototype.replaceAll = function(s1,s2){ 
return this.replace(new RegExp(s1,"gm"),s2); 
}

这样就可以像使用replace 方法一样使用replaceAll了

str.replaceAll("word","Excel");总结一下, 三种方式

1. str.replace(/oldString/g,newString)

2. str.replace(new RegExp(oldString,"gm"),newString)

3. 增加String 对象原型方法 replaceAll

Javascript 相关文章推荐
JSON 客户端和服务器端的格式转换
Aug 27 Javascript
DIV外区域Click后关闭DIV的实现代码
Dec 21 Javascript
jquery应该如何来设置改变按钮input的onclick事件
Dec 10 Javascript
JavaScript简单实现网页回到顶部功能
Nov 12 Javascript
新增加的内容是如何将div的scrollbar自动移动最下面
Jan 02 Javascript
jquery validate 自定义验证方法介绍 日期验证
Feb 27 Javascript
深入理解JavaScript系列(34):设计模式之命令模式详解
Mar 03 Javascript
Jquery全选与反选点击执行一次的解决方案
Aug 14 Javascript
JavaScript生成.xls文件的代码
Dec 22 Javascript
使用ionic(选项卡栏tab) icon(图标) ionic上拉菜单(ActionSheet) 实现通讯录界面切换实例代码
Oct 20 Javascript
Vue Cli3 创建项目的方法步骤
Oct 15 Javascript
jquery操作select常见方法大全【7种情况】
May 28 jQuery
javascript原生和jquery库实现iframe自适应高度和宽度
Jul 18 #Javascript
关于javaScript注册click事件传递参数的不成功问题
Jul 18 #Javascript
Javascript验证上传图片大小[前台处理]
Jul 18 #Javascript
IE中JS跳转丢失referrer问题的2个解决方法
Jul 18 #Javascript
JavaScript中的document.referrer在各种浏览器测试结果
Jul 18 #Javascript
javascript的document.referrer浏览器支持、失效情况总结
Jul 18 #Javascript
jQuery控制的不同方向的滑动(向左、向右滑动等)
Jul 18 #Javascript
You might like
php实现向javascript传递数组的方法
2015/07/27 PHP
javascript模仿msgbox提示效果代码
2008/06/10 Javascript
自己开发Dojo的建议框架
2008/09/24 Javascript
JavaScript中URL编码函数代码
2011/01/11 Javascript
整理8个很棒的 jQuery 倒计时插件和教程
2011/12/12 Javascript
JS的Document属性和方法小结
2013/09/17 Javascript
基于mouseout和mouseover等类似事件的冒泡问题解决方法
2013/11/18 Javascript
jquery 提示信息显示后自动消失的具体实现
2013/12/18 Javascript
使用百度地图api实现根据地址查询经纬度
2014/12/11 Javascript
node.js中的fs.writeFile方法使用说明
2014/12/14 Javascript
深入理解JavaScript系列(22):S.O.L.I.D五大原则之依赖倒置原则DIP详解
2015/03/05 Javascript
JavaScript获取当前网页标题(title)的方法
2015/04/03 Javascript
浅谈JavaScript中setInterval和setTimeout的使用问题
2015/08/01 Javascript
JQuery datepicker 用法详解
2015/12/25 Javascript
深入理解js generator数据类型
2016/08/16 Javascript
用jQuery的AJax实现异步访问、异步加载
2016/11/02 Javascript
es6学习之解构时应该注意的点
2017/08/29 Javascript
vue引入ueditor及node后台配置详解
2018/01/03 Javascript
vue.js给动态绑定的radio列表做批量编辑的方法
2018/02/28 Javascript
JS中DOM元素的attribute与property属性示例详解
2018/09/04 Javascript
微信小程序Echarts图表组件使用方法详解
2019/06/25 Javascript
python使用7z解压软件备份文件脚本分享
2014/02/21 Python
仅利用30行Python代码来展示X算法
2015/04/01 Python
python简单实现旋转图片的方法
2015/05/30 Python
怎样使用Python脚本日志功能
2016/08/14 Python
python 高效去重复 支持GB级别大文件的示例代码
2018/11/08 Python
python3.6生成器yield用法实例分析
2019/08/23 Python
应届生会计求职信
2013/11/11 职场文书
水污染治理专业毕业生推荐信
2013/11/14 职场文书
师范生求职自荐信
2014/06/14 职场文书
民族学专业大学生职业规划范文:清晰未来的构想
2014/09/20 职场文书
教师节感谢信
2015/01/22 职场文书
七年级地理教学计划
2015/01/22 职场文书
交通安全温馨提示语
2015/07/14 职场文书
给校长的建议书作文300字
2015/09/14 职场文书
文案策划岗位个人自我评价(范文)
2019/08/08 职场文书