删除双引号

时间:2018-07-07 05:28:43

标签: ruby ruby-on-rails-3 ruby-on-rails-3.2

  

使用gsub删除双精度

a = "5.102"
a.gsub('\"', "") 

result = "5.102"

如何从返回值中删除引号以获得以下内容?

预期结果= 5.102

2 个答案:

答案 0 :(得分:1)

也许您应该在“ 5.102”上使用 .to_f 方法

"5.102".to_f #=> 5.102

答案 1 :(得分:0)

就像其他人提到的那样,您需要区分数字的内部表示形式(作为字符串还是作为数字)和数字的外部表示形式(格式化)作为字符串。通常,(<option> <audio> <canvas> <object> <applet> 5.1是数字而不是字符串时,5.100to_f将被相同地存储在内存中。 (从数学上讲,这也是正确的。)

您可能希望将值内部存储为数字,因为这样您就可以使用数字y功能,例如加,舍入等。将字符串(带双引号的内容)转换为浮点型点数(与字符串值相对的数字值)可以按照另一个答案中的说明使用2.5.1 :002 > "5.102".class => String 2.5.1 :003 > "5.102".to_f => 5.102 2.5.1 :004 > "5.102".to_f.class => Float

2.5.1 :005 > "%.3f" % 5.102
 => "5.102"
2.5.1 :006 > "%.3f" % 5.1
 => "5.100"

对于零填充输出,我们在Ruby中使用sprintf样式格式(与C语言和许多其他语言一样):

Person