Ruby on rails 在ruby或rails中将人名字符串转换为浮点

Ruby on rails 在ruby或rails中将人名字符串转换为浮点,ruby-on-rails,ruby,Ruby On Rails,Ruby,我搜索了一阵ruby或rails方法,我可以调用它将像1000.53这样的简单字符串转换成浮点值,但我不能 我所能看到的只是一对一的人,这和我想要的正好相反。我的用例有什么可用的吗?或者我一个人,我不这么认为。另外,我想要的是一个简单的转换,如上所述,用逗号和点。无需花式货币或其他任何符号转换 谢谢 编辑 “1000.5”.gsub/,/,.to_f可行,但我正在寻找ruby或rails中已经可用的方法。或者使用gsub解决方案的更好替代方案。to\u f可能会起作用 请尝试您的\u字符串。要\

我搜索了一阵ruby或rails方法,我可以调用它将像1000.53这样的简单字符串转换成浮点值,但我不能

我所能看到的只是一对一的人,这和我想要的正好相反。我的用例有什么可用的吗?或者我一个人,我不这么认为。另外,我想要的是一个简单的转换,如上所述,用逗号和点。无需花式货币或其他任何符号转换

谢谢

编辑

“1000.5”.gsub/,/,.to_f可行,但我正在寻找ruby或rails中已经可用的方法。或者使用gsub解决方案的更好替代方案。

to\u f可能会起作用


请尝试您的\u字符串。要\u f

首先从字符串中删除所有不是数字或分隔符的字符。在你的例子中。然后在经过消毒的字符串上调用\u f:

“1000.53”。gsub/[^\d^.]/,.to_f=>1000.53
您可以使用to_f方法将字符串转换为浮点数。但在本例中,字符串包含逗号字符,因此必须先将其删除。str=1000.53 str.delete.。这将为您提供正确的浮点数。否。不会的1000“。to_f=>1.0欢迎来到SO,劳拉。”1000.53'-to_f将返回1.0,因为该方法如何执行强制。因此,OP提出了问题。你可以随时编辑你的答案,或者删除它,如果它吸引了太多的反对票。