Подтвердить что ты не робот

Ruby zerofill строка

Формирование целого числа, которое должно быть заполнено нулями, легко в Ruby:

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

Но когда я пытаюсь заполнить String нулями, я не могу найти простое решение:

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

Я хотел бы получить:

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

Ответ 1

Вы можете использовать rjust или ljust.

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