2011-11-11 112 views
0

我想这一点:红宝石:字符串浮点整数

'5.6535'.something => 56 
'5.657'.something => 566 
'5.3'.something => 530 
'5'.something => 500 

等等...

我的“弦”浮动从1..9范围,我希望他们能够转换为整数三个digets 。

谢谢!

基兰

+1

如果输入是“56”,结果如何? –

+0

你的字符串在分隔符前总是只包含一个数字? – WarHog

+0

是的,它的范围从1到9,所以这应该工作。 –

回答

3
strings.each do |str| 
    puts (str.to_f * 100).floor 
end 

替代roundceilfloor这取决于你想要什么样的舍入行为。

+0

谢谢,它真的很简单! 也发现这个:http://www.ruby-doc.org/core-1.9.3/String.html#method-i-to_f –

+0

这并不能保证三位数。 –

+1

@MarkByers,当然。问题需要澄清,如果这很重要。 – Peter

1
(x + '00­0').scan(/­\d/)[0,3].­join('').to_i