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弹窗可自由拖拽且兼容大部分浏览器
Oct 22 Javascript
Javascript中各种trim的实现详细解析
Dec 10 Javascript
javascript限制用户只能输汉字中文的方法
Nov 20 Javascript
浅谈jQuery中的事件
Mar 23 Javascript
js的form表单提交url传参数(包含+等特殊字符)的两种解决方法
May 25 Javascript
JS实现焦点图轮播效果的方法详解
Dec 19 Javascript
jQuery树插件zTree使用方法详解
May 02 jQuery
微信小程序 功能函数小结(手机号验证*、密码验证*、获取验证码*)
Dec 08 Javascript
bootstrap模态框弹出和隐藏,动态改变中间内容的实例
Aug 10 Javascript
使用D3.js构建实时图形的示例代码
Aug 28 Javascript
生产制造追溯系统之再说条码打印
Jun 03 Javascript
js变量值传到php过程详解 将php解析成数据
Jun 26 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读MYSQL中文乱码的解决方法
2006/12/17 PHP
PHP中uploaded_files函数使用方法详解
2011/03/09 PHP
简单的php文件上传(实例)
2013/10/27 PHP
php获取文件类型和文件信息的方法
2015/07/10 PHP
php实现的顺序线性表示例
2019/05/04 PHP
JS JavaScript获取Url参数,src属性参数
2021/03/09 Javascript
JS日历 推荐
2006/12/03 Javascript
Jquery Ajax学习实例5 向WebService发出请求,返回泛型集合数据的异步调用
2010/03/17 Javascript
jquery mobile changepage的三种传参方法介绍
2013/09/13 Javascript
JavaScript函数柯里化详解
2016/04/29 Javascript
BootStrap智能表单demo示例详解
2016/06/13 Javascript
jQuery基于函数重载实现自定义Alert函数样式的方法
2016/07/27 Javascript
AngularJS基础 ng-mouseover 指令简单示例
2016/08/02 Javascript
基于JavaScript实现鼠标向下滑动加载div的代码
2016/08/31 Javascript
vue router+vuex实现首页登录验证判断逻辑
2018/05/17 Javascript
微信小程序学习笔记之获取位置信息操作图文详解
2019/03/29 Javascript
[07:49]2014DOTA2国际邀请赛 Newbee夺冠后采访xiao8坦言奖金会上交
2014/07/23 DOTA
用Python编写分析Python程序性能的工具的教程
2015/04/01 Python
python基础教程之匿名函数lambda
2017/01/17 Python
详解Pytorch 使用Pytorch拟合多项式(多项式回归)
2018/05/24 Python
对python字典元素的添加与修改方法详解
2018/07/06 Python
Python shelve模块实现解析
2019/08/28 Python
python多线程分块读取文件
2019/08/29 Python
tensorflow 限制显存大小的实现
2020/02/03 Python
Python 3.8 新功能大揭秘【新手必学】
2020/02/05 Python
利用python在excel中画图的实现方法
2020/03/17 Python
Python实现代码块儿折叠
2020/04/15 Python
python2.7使用scapy发送syn实例
2020/05/05 Python
前端面试必备之CSS3的新特性
2017/09/05 HTML / CSS
马来西亚在线药房:RoyalePharma
2019/12/01 全球购物
技校毕业生自荐信范文
2014/03/07 职场文书
副科级后备干部考察材料
2014/05/15 职场文书
甜品蛋糕店创业计划书
2014/09/21 职场文书
村党的群众路线教育实践活动工作总结
2014/10/25 职场文书
普宁寺导游词
2015/02/04 职场文书
《妈妈别哭,有我在》读后感3篇
2020/01/13 职场文书