rubyfunctionformattingnumbers

How to format a number 1000 as "1 000"


I need a way to format numbers. I stored some numbers in my DB table, e.g. 12500, and would like to print them in this format 12 500 (so there is a space every 3 digits). Is there an elegant way to do this?


Solution

  • There is no built in way to it ( unless you using Rails, ActiveSupport Does have methods to do this) but you can use a Regex like

    formatted_n = n.to_s.reverse.gsub(/...(?=.)/,'\&,').reverse