ran*_*its 22 ruby currency ruby-on-rails
目前是否有能够接受字符串的宝石,为此目的都以美元为单位,并将它们转换为数字?一些例子是:
我知道在"5500"示例中我可以做"5500".to_i,但导入的电子表格不一致,有些包括逗号和美元符号,而其他则没有.在Ruby中有一个很好的处理方式吗?
我已经尝试了类似的东西money_string.scan(/\d/).join
似乎很好,只是担心我会遇到我还没有找到的边缘情况,比如小数位.
nai*_*ipl 41
为什么不在调用之前删除所有非数字字符 .to_i
例:
"$7,600".gsub(/\D/,'').to_i
Run Code Online (Sandbox Code Playgroud)
对于浮点数:
"$7,600.90".gsub(/[^\d\.]/, '').to_f
Run Code Online (Sandbox Code Playgroud)
你可以使用Money gem
Money.parse("$100") == Money.new(10000, "USD")
Run Code Online (Sandbox Code Playgroud)