Ruby zerofill是一个字符串

时间:2012-09-20 00:26:39

标签: ruby printf ruby-1.9.2

在Ruby中编写一个用零填充的整数是很容易的:

sprintf( "%010d", 345 ) #=> "0000000345"

但是当我尝试用零填充字符串时,我找不到一个简单的解决方案:

sprintf( "%010d", "12AD" ) #=> ArgumentError: invalid value for Integer(): "12AD"
sprintf( "%010s", "12AD" ) #=> "      12AD"

我想获得:

sprintf( "%010s", "12AD" ) #=> "00000012AD"

1 个答案:

答案 0 :(得分:49)

您可以使用rjustljust

>> "12AD".rjust(10, '0')
#=> "00000012AD"