最近有个需求,把数字显示成固定的位数,位数不足的在前面以零补充

比如 5 位:
复制代码 代码如下:
3 -> 00003
292 -> 00292
12422 -> 12422
发现 Ruby 很容易就可以实现了
复制代码 代码如下:irb> "%05d" % 12422
"12422"
irb> "%05d" % 22
"00022"

上面的方法基本上是标准作法。如果是直接处理字符串,也可以用 String#rjust:
"12422".rjust(5, '0')    => "12422"
"22".rjust(5, '0')       => "00022"

附:另一篇

项目中用到了字符串左右补零的算法,最后发现rails有这方面的函数可以实现,省去不必要的麻烦,例子应该很简单易懂
复制代码 代码如下:
> a = 22
> s = str(a).rjust(4, '0')
> print s
0022
> a = 2222
> s = str(a).rjust(4, '0')
> print s
2222

标签:
Ruby,字符串左侧补零

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
白云城资源网 Copyright www.dyhadc.com

评论“Ruby中字符串左侧补零方法实例”

暂无“Ruby中字符串左侧补零方法实例”评论...

稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!

昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。

这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。

而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?