日期:2014-05-16  浏览次数:20926 次

计数器的正则表达式如何写?
各种字母+数字+其它字母
1我想实现将“数字”格式化,比如8个数字,不足数字前用0填补,超数时位数自动增长,字母位置保持不变
2将数字用图片代替,实现图片化计数器的功能。
如果实现
比如:
docment.write("432")
实现为document.write("4的图片3图片2的图片")

------解决方案--------------------
各种字母+数字+其它字母
----
没看明白,楼主是要数字补全还是什么?碰到数字不是8位的就自动补全0到8位?
------解决方案--------------------
function padding(v,len){
  for(var i=0,j=len-v.length;i<j;i++)v='0'+v;
  return v;
}
function toImg(s){
  var r='',rx=/\d+/;
  s=s.replace(/\d+/g,function($0){return padding($0,8);});//自动补全字符串数字足8位的加0
  for(var i=0,j=s.length;i<j;i++)
    r+=rx.test(s[i])?'<img src="'+s[i]+'.gif"/>':s[i];//注意修改图片路径,做10张图片,0.gif对应用0,以此类推
  return r;
}
document.write(toImg('4323Ab123456789'))