将时间字符串转换为 Ruby 中的适当格式

Converting Time strings into proper Formats in Ruby

我试图将以下字符串转换为 Ruby、

中的适当时间

For.Ex。

 string_a = "1 minute, 6 seconds"   
 string_b = "3 minutes, 35 seconds" 

我正在努力实现的是,

将:string_a转换为时间格式:1:06 - 因为它只有 6 秒,所以在它前面添加 0
并将 string_b 转换为时间格式:3.35

你能帮帮我吗?

假设输入字符串总是采用相同的格式:

time = string_a.scan(/\d+/)
time[0] + ":" +  time[1].rjust(2,'0')
# => "1:06"

string_b = "3 minutes, 35 seconds"
timeb = string_b.scan(/\d+/)
timeb[0] + ":" +  timeb[1].rjust(2,'0')
# => "3:35"

您可以使您的正则表达式更严格,但是如果输入字符串始终采用“m 分钟,s 秒”格式,那么这就足够了。