2010-09-13 62 views

回答

6

如果你可以用它打印「2.0」,而不是「2」的生活,你可以只是做:

"120m 90m".gsub(/(\d+)m/) { "#{$1.to_f/60.0}h"} 
#=> "2.0h 1.5h" 

如果你需要打印它沒有」 .0" ,你需要檢查數量是否整除60,如果這樣返回$1.to_i/60代替鄰f $1.to_f/60.0

另外,您可以致電浮動to_s並刪除.0如果字符串以」 .0"

1

除了sepp2k的回答結束。

"120m 90m".gsub(/(\d+)m/) { "#{($1.to_f/60.0).to_s.gsub(/\.0$/, '')}h"} 
#=> "2h 1.5h"