最近有個需求,把數字顯示成固定的位數,位數不足的在前面以零補充
比如 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
新聞熱點
疑難解答