例如,如果我们有一个像:
这样的字符串duration = "2.days"
如何在“2.days”中将这个2与3相乘得到: “6.days”
答案 0 :(得分:3)
如果您的意思是使用辅助方法:
2.days
# => 2 days
2.days * 3
# => 1036800
如果你的意思是操纵字符串:
duration = "2.days"
p = duration.split('.')
[ p[0].to_i * 3, p[1] ].join('.')
# => "6.days"
答案 1 :(得分:2)
如果您希望将字符串乘以“5.months 2.days 3.minutes”
,则以下代码非常有用"5.months 2.days 3.minutes".gsub(/\d+/){|s| s.to_i*3}
=> "15.months 6.days 9.minutes"
答案 2 :(得分:1)
如果你想从一个字符串开始并产生一个字符串,那么正则表达式通常是最好的方法。
"2.days".sub(/\d+/){|s| s.to_i*3}
答案 3 :(得分:0)
(duration.split('.').first.to_i * 3).to_s + '.days'
答案 4 :(得分:0)
duration = "2.days"
duration[0] = (duration[0].to_i * 3).to_s
p duration # => "6.days"