[ruby-core:93849] [Ruby master Feature#16011] Digit grouping

From: shevegen@...
Date: 2019-07-19 20:17:04 UTC
List: ruby-core #93849
Issue #16011 has been updated by shevegen (Robert A. Heiler).


The python example seems quite concise to me:

    format(1234, '08,') # => '0,001,234'
    format(1234, '8,')  # => '   1,234'

I can not say how useful this may be though.

The method-names seem a bit strange to me - format() seems very generic
and delimited() is .... hmmm. I am not sure with what this is "de-limited".

----------------------------------------
Feature #16011: Digit grouping
https://bugs.ruby-lang.org/issues/16011#change-79740

* Author: svnpenn (Steven Penny)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
Ruby seems to have no way to format a number with grouped thousands. I see Rails
has an option:

    require 'active_support/all'
    1234.to_s(:delimited)

However in this case it seems that grouping cannot be combined with say, leading
zeros:

https://github.com/rails/rails/issues/36707

This is quite simple with other languages, for example JavaScript:

    (1234).toLocaleString(0, {minimumIntegerDigits: 7});
    "0,001,234"

Python:

    >>> format(1234, '08,')
    '0,001,234'

Go:

    package main
    import "golang.org/x/text/language"
    import "golang.org/x/text/message"
    func main() {
       message.NewPrinter(language.English).Printf("%07d\n", 1234)
       // 0,001,234
    }



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>

In This Thread

Prev Next