在Ruby中将12小时时间转换为24小时格式

pan*_*ani 9 ruby datetime date

如何将"11am"和"10pm"转换为"11:00"和"22:00"?有没有使用日期和时间类的简单方法?

Pan*_*kos 24

我首先解析字符串,Time#strptime然后输出Time#strftime.这确保了您对原始格式的严格检查.

require 'time'
Time.strptime("10pm", "%I%P").strftime("%H:%M")
=> "22:00"
Run Code Online (Sandbox Code Playgroud)


ste*_*lag 11

Time类没有parse方法,但是DateTime有.

require 'date'
DateTime.parse("11pm").strftime("%H:%M") #=> "23:00"
Run Code Online (Sandbox Code Playgroud)