instance method
number_with_delimiter
Ruby on Rails 2.3.18
Since v2.2.3Signature
number_with_delimiter(number, *args)
Formats a number with grouped thousands using delimiter (e.g., 12,324). You can customize the format in the options hash.
Options
-
:delimiter- Sets the thousands delimiter (defaults to “,”). -
:separator- Sets the separator between the units (defaults to “.”).
Examples
number_with_delimiter(12345678) # => 12,345,678 number_with_delimiter(12345678.05) # => 12,345,678.05 number_with_delimiter(12345678, :delimiter => ".") # => 12.345.678 number_with_delimiter(12345678, :separator => ",") # => 12,345,678 number_with_delimiter(98765432.98, :delimiter => " ", :separator => ",") # => 98 765 432,98
You can still use number_with_delimiter with the old API that accepts the delimiter as its optional second and the separator as its optional third parameter:
number_with_delimiter(12345678, " ") # => 12 345.678 number_with_delimiter(12345678.05, ".", ",") # => 12.345.678,05
Parameters
-
numberreq -
argsrest
Source
# File actionpack/lib/action_view/helpers/number_helper.rb, line 152
def number_with_delimiter(number, *args)
options = args.extract_options!
options.symbolize_keys!
defaults = I18n.translate(:'number.format', :locale => options[:locale], :raise => true) rescue {}
unless args.empty?
ActiveSupport::Deprecation.warn('number_with_delimiter takes an option hash ' +
'instead of separate delimiter and precision arguments.', caller)
delimiter = args[0] || defaults[:delimiter]
separator = args[1] || defaults[:separator]
end
delimiter ||= (options[:delimiter] || defaults[:delimiter])
separator ||= (options[:separator] || defaults[:separator])
begin
parts = number.to_s.split('.')
parts[0].gsub!(/(\d)(?=(\d\d\d)+(?!\d))/, "\\1#{delimiter}")
parts.join(separator)
rescue
number
end
end
Defined in actionpack/lib/action_view/helpers/number_helper.rb line 152
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActionView::Helpers::NumberHelper