收藏本站腾讯微博新浪微博

经典论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

蓝色理想 最新研发动态 网站开通淘帖功能 - 蓝色理想插件 论坛内容导读一页看论坛 - 给官方提建议

论坛活动及任务 地图和邮件任务 请多用悬赏提问 热夏来袭,选一款蓝色理想的个性T恤吧!

手机上论坛,使用APP获得更好体验 急需前端攻城狮,获得内部推荐机会 论坛开通淘帖功能,收藏终于可以分类了!

搜索
查看: 3133|回复: 4

求教正则

[复制链接]
发表于 2006-8-10 16:02:18 | 显示全部楼层 |阅读模式
var _A = ['A','B','C','D'];
var _B = '<ul><li>$0$< / li><li>$1$< / li><li>$2$< / li><li>$3$< / li></ul>';
var _C= _B.replace( ???????? );
求教正则该如何写?
让 _C = '<ul><li>A< / li><li>B< / li><li>C< / li><li>D< / li></ul>';  




var _C = _B;
for(var j=0; j<_A.length; j++){
_C = _C.replace('$' + j + '$',_A[j]);        
}

用循环一个一个替换,也能得到结果,但是效率很差,大量数据特别慢
_C = '<ul><li>A< / li><li>B< / li><li>C< / li><li>D< / li></ul>';
发表于 2006-8-10 16:31:16 | 显示全部楼层

 提示:您可以先修改部分代码再运行



处理数组更容易啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-10 16:34:49 | 显示全部楼层
谢谢楼上的。我要的是正则替换效果。
数组只是举个例子,并不一定是顺序的<li>
回复 支持 反对

使用道具 举报

发表于 2006-8-10 16:44:28 | 显示全部楼层

 提示:您可以先修改部分代码再运行


正则的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-10 17:22:21 | 显示全部楼层
八神:
_C= _B.replace((/\$(\d+)\$/g, function(arg,value){alert(value);return (_A[value])});

或者

fosjos(无聊的菜鸟程序员):
_C = _B.replace(/\$(\d+)\$/g,function(){return _A[arguments[1]]});



感谢各位的帮助。。。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|Archiver|手机版|blueidea.com ( 湘ICP备12001430号 )  

GMT+8, 2020-9-29 10:03 , Processed in 0.140271 second(s), 8 queries , Gzip On, Memcache On.

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表