0

我有一个看起来像这样的字符串:“¥3,250”。我想将其转换为浮点数。

我已经尝试过这样的事情:

    price = "¥3,250"
    price[0] = ""
    price.to_f

但是 ruby​​ 使用逗号 (,) 作为小数分隔符。

4

3 回答 3

2
price_as_float = price.scan(/\d|\./).join('').to_f

它甚至应该工作,说"¥3,250.4"

它所做的只是从字符串中提取数字和点并从中创建一个字符串,然后将其转换为浮点数

于 2013-03-09T19:46:43.167 回答
0

你可以试试这个:

   price = "¥3,250"
   price.gsub(/[,|¥]/,'').to_f   #=> 3250.0
于 2013-03-09T19:46:03.917 回答
0
price = "¥3,250"
price.delete("¥,").to_f
于 2013-03-09T19:58:52.497 回答