javascript实现全局匹配并替换的方法


Posted in Javascript onApril 27, 2015

在javascript替换字符串使用的是replace函数,但在实际使用过程中却发现该函数只会替换被匹配的第一个字符,这就让人很不爽了,在php语言中,replace可是实现全局匹配并替换的。没办法,仔细研究了下,发现还是有其他办法实现全局匹配并替换的。

(1)其实replace本身也可以实现这种功能的,但要通过正则的形式加个参数g,例如:

str.replace(/www.baidu.com/g,'3water.com');

或者:

str.replace(new RegExp('www.baidu.com','gm'),'3water.com');

将 str 字符中的 www.baidu.com 全部替换为 3water.com

(2)自己扩展js函数库,自创函数replaceall方法实现全局匹配并替换的功能。如下:

String.prototype.replaceall=function(s1,s2){ 

    return this.replace(new RegExp(s1,"gm"),s2);  

}

这个其实也是利用了方法一的思想。举例如下(这里也实现了同上的功能,只不过相比方法一更为直观而已):

str.replace('www.baidu.com','3water.com');

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
用tip解决Ext列宽度不够的问题
Dec 13 Javascript
javascript 打开页面window.location和window.open的区别
Mar 17 Javascript
js和php如何获取当前url的内容
Sep 22 Javascript
jQuery中width()方法用法实例
Dec 24 Javascript
JavaScript给input的value赋值引发的关于基本类型值和引用类型值问题
Dec 07 Javascript
微信公众号 客服接口的开发实例详解
Sep 28 Javascript
jQuery实现自动调用和触发某个事件的方法
Nov 18 Javascript
Angular中的$watch、$watchGroup、$watchCollection
Jun 25 Javascript
vue.js分页中单击页码更换页面内容的方法(配合spring springmvc)
Feb 10 Javascript
AngularJs的UI组件ui-Bootstrap之Tooltip和Popover
Jul 13 Javascript
基于AngularJs select绑定数字类型的问题
Oct 08 Javascript
如何阻止小程序遮罩层下方图层滚动
Sep 05 Javascript
js限制文本框只能输入整数或者带小数点的数字
Apr 27 #Javascript
如何使用HTML5地理位置定位功能
Apr 27 #Javascript
jQuery插件scroll实现无缝滚动效果
Apr 27 #Javascript
Javascript非构造函数的继承
Apr 27 #Javascript
JQuery选中checkbox方法代码实例(全选、反选、全不选)
Apr 27 #Javascript
jquery简单的弹出层浮动层代码
Apr 27 #Javascript
javascript实现俄罗斯方块游戏的思路和方法
Apr 27 #Javascript
You might like
php+mysql数据库查询实例
2015/01/21 PHP
微信支付开发订单查询实例
2016/07/12 PHP
Thinkphp整合微信支付功能
2016/12/14 PHP
PHPStorm 2020.1 调试 Nodejs的多种方法详解
2020/09/17 NodeJs
ext form 表单提交数据的方法小结
2008/08/08 Javascript
从URL中提取参数与将对象转换为URL查询参数的实现代码
2012/01/12 Javascript
Javascript 键盘事件的组合使用实现代码
2012/05/04 Javascript
jquery对元素拖动排序示例
2014/01/16 Javascript
js修改原型的属性使用介绍
2014/01/26 Javascript
jquery日历控件实现方法分享
2014/03/07 Javascript
jQuery切换网页皮肤并保存到Cookie示例代码
2014/06/16 Javascript
JS获取鼠标选中的文字
2016/08/10 Javascript
JS中parseInt()和map()用法分析
2016/12/16 Javascript
JavaScript闭包的简单应用
2017/09/01 Javascript
提升页面加载速度的插件InstantClick
2017/09/12 Javascript
说说AngularJS中的$parse和$eval的用法
2017/09/14 Javascript
Vue.js 实现数据展示全部和收起功能
2018/09/05 Javascript
Postman的下载及安装教程详解
2018/10/16 Javascript
vue-router判断页面未登录自动跳转到登录页的方法示例
2018/11/04 Javascript
Vue v-bind动态绑定class实例方法
2020/01/15 Javascript
python fabric使用笔记
2015/05/09 Python
Python编写一个优美的下载器
2018/04/15 Python
python datetime中strptime用法详解
2019/08/29 Python
Python如何截图保存的三种方法(小结)
2020/09/01 Python
Pandas DataFrame求差集的示例代码
2020/12/13 Python
Html5 APP中监听返回事件处理的方法示例
2018/03/15 HTML / CSS
高中运动会广播稿
2014/01/21 职场文书
《莫高窟》教学反思
2014/02/25 职场文书
计算机专业应届生求职信
2014/04/06 职场文书
解除合同协议书
2014/04/17 职场文书
学校教师安全责任书
2014/07/23 职场文书
幼儿园大班毕业评语
2014/12/31 职场文书
2015年工会工作总结
2015/03/30 职场文书
公司表扬信格式
2015/05/04 职场文书
赡养老人协议书范本
2015/08/06 职场文书
【海涛教你打DOTA】虚空假面第一视角骨弓3房29杀
2022/04/01 DOTA