Есть ли у Ruby какие-либо классы или методы Formatter, которые можно использовать для форматирования чисел для таких вещей, как валюта и т.д., или есть ли какие-либо драгоценные камни, которые это делают, или вам нужно писать самостоятельно?
У Ruby есть классы форматирования чисел?
Ответ 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.
Ответ 4
Вы можете проверить рубин на рельсах ActionView:: Helpers:: NumberHelper