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

У Ruby есть классы форматирования чисел?

Есть ли у Ruby какие-либо классы или методы Formatter, которые можно использовать для форматирования чисел для таких вещей, как валюта и т.д., или есть ли какие-либо драгоценные камни, которые это делают, или вам нужно писать самостоятельно?

4b9b3361

Ответ 1

Ruby имеет все стандартные форматы печати, доступные либо через printf, sprintf, либо с помощью 'formatstring' % [var1, ...].

>> '%.2f' % 3.14159 #=> "3.14"
>> '%4s %-4s' % ['foo', 'bar'] #=> " foo bar "

Ответ 2

Попробуйте следующее:

1234567890.123.to_s.reverse.gsub(/(\d{3})(?=\d)/, '\\1,').reverse
=> "1,234,567,890.123"

Взято из комментария @pguardiario в подобном потоке

Ответ 3

Вы можете использовать Kernel#sprintf (или Kernel#format) и сделать это таким образом. Ссылка API.