javascript 正则替换 replace(regExp, function)用法


Posted in Javascript onMay 22, 2010
function fn() 
{ 
for(var i = 0;i < arguments.length;i++){ 
alert("第"+(i+1)+"个参数的值:"+arguments[i]); 

} 
} 
var str = '<div id="{wo}" >{ni}</div>'; 
str.replace(/\{([a-z]+)\}/ig, fn);

根据多次测试由输出结果可以得出fn中:

第一个参数为匹配到的字符串,如{wo}和{ni};

第二个参数可以有0-N个,为第一个参数中匹配到一个括号正则的字符串,如第一个参数中的wo和ni,能匹配([a-z]+),

括号有几组,则参数有几个;

第三个参数为第一个参数中匹配到的字符串所在位置,如{wo}返回9,{no}返回16;

第四个参数为用来匹配的字符串,在这个例子中就是<div id="{wo}" >{ni}</div>.

本例中对于一个包含wo和ni的json对象可以简单地用:

str.replace(/\{([a-z]+)\}/ig, function(s, t){ 
return json[t]; 
});

来替换.
Javascript 相关文章推荐
js实现权限树的更新权限时的全选全消功能
Feb 17 Javascript
Javascript 日期处理之时区问题
Oct 08 Javascript
js将long日期格式转换为标准日期格式实现思路
Apr 07 Javascript
父元素与子iframe相互获取变量和元素对象的具体实现
Oct 15 Javascript
javascript跨域原因以及解决方案分享
Apr 08 Javascript
json对象与数组以及转换成js对象的简单实现方法
Jun 24 Javascript
在Docker快速部署Node.js应用的详细步骤
Sep 02 Javascript
jQuery实现的手风琴侧边菜单效果
Mar 29 jQuery
微信小程序跳转到其他网页(外部链接)的实现方法
Sep 20 Javascript
在Layui中实现开关按钮的效果实例
Sep 29 Javascript
vue解决花括号数据绑定不成功的问题
Oct 30 Javascript
Vue 实现CLI 3.0 + momentjs + lodash打包时优化
Nov 13 Javascript
JQuery 文本框使用小结
May 22 #Javascript
基于Asp.net与Javascript控制的日期控件
May 22 #Javascript
jQueryPad 实用的jQuery测试工具(支持IE,chrome,FF)
May 22 #Javascript
用jQuery打造TabPanel效果代码
May 22 #Javascript
Mootools 图片展示插件(lightbox,ImageMenu)收集集合
May 21 #Javascript
jquery 多级下拉菜单核心代码
May 21 #Javascript
JQuery 学习技巧总结
May 21 #Javascript
You might like
php 破解防盗链图片函数
2008/12/09 PHP
php curl模拟post请求小实例
2013/11/13 PHP
php的sprintf函数的用法 控制浮点数格式
2014/02/14 PHP
php与flash as3 socket通信传送文件实现代码
2014/08/16 PHP
POST一个JSON格式的数据给Restful服务实例详解
2017/04/07 PHP
PHP时间类完整代码实例
2021/02/26 PHP
用jquery ajax获取网站Alexa排名的代码
2009/12/12 Javascript
javascript动画浅析
2012/08/30 Javascript
5分钟理解JavaScript中this用法分享
2013/11/09 Javascript
js生成动态表格并为每个单元格添加单击事件的方法
2014/04/14 Javascript
使用Angular CLI进行单元测试和E2E测试的方法
2018/03/24 Javascript
vue中设置height:100%无效的问题及解决方法
2018/07/27 Javascript
在Vue项目中使用jsencrypt.js对数据进行加密传输的方法
2019/04/17 Javascript
Vue 实现html中根据类型显示内容
2019/10/28 Javascript
javascript实现超好看的3D烟花特效
2020/01/01 Javascript
JS常见内存泄漏及解决方案解析
2020/05/30 Javascript
python中管道用法入门实例
2015/06/04 Python
python学习 流程控制语句详解
2016/06/01 Python
python 实现删除文件或文件夹实例详解
2016/12/04 Python
Python小游戏之300行代码实现俄罗斯方块
2019/01/04 Python
详解使用django-mama-cas快速搭建CAS服务的实现
2019/10/30 Python
pytorch中tensor张量数据类型的转化方式
2019/12/31 Python
结束运行python的方法
2020/06/16 Python
意大利和国际奢侈品牌购物网站:Suitnegozi.com
2021/01/15 全球购物
了解AppleShare protocol(AppleShare协议)吗
2015/08/28 面试题
港湾网络笔试题
2014/04/19 面试题
结婚典礼证婚词
2014/01/08 职场文书
医药学专业大学生职业生涯规划书论文
2014/01/21 职场文书
2014幼儿园教师师德师风演讲稿
2014/09/10 职场文书
老公给老婆的检讨书(精华篇)
2014/10/18 职场文书
领导干部学习三严三实心得体会
2016/01/05 职场文书
利用ajax+php实现商品价格计算
2021/03/31 PHP
Springboot如何同时装配两个相同类型数据库
2021/11/17 Java/Android
英镑符号 £
2022/02/17 杂记
Tomcat配置访问日志和线程数
2022/05/06 Servers
el-table-column 内容不自动换行的解决方法
2022/08/14 Vue.js