Ruby 如何使用慢性自然语言日期/时间解析器来解析;12:00“;下午12点怎么样?

Ruby 如何使用慢性自然语言日期/时间解析器来解析;12:00“;下午12点怎么样?,ruby,time,chronic,Ruby,Time,Chronic,我使用RubyGem“Chronic”将四位数字符串解析为DateTime对象。我使用的是军事格式的时间(即:“0800”),从文件上看,这似乎是一种有效的格式 在大多数情况下,Chronic正确解析此格式的时间-但是它总是将以“12”开头的四位数字符串解析为第二天的00:XX AM,而不是当前一天的12:XX PM 例如: >> Chronic.parse("1234") => Thu Sep 17 00:34:00 -0600 2009 我发现,如果我在小时和分钟之间放一

我使用RubyGem“Chronic”将四位数字符串解析为DateTime对象。我使用的是军事格式的时间(即:“0800”),从文件上看,这似乎是一种有效的格式

在大多数情况下,Chronic正确解析此格式的时间-但是它总是将以“12”开头的四位数字符串解析为第二天的00:XX AM,而不是当前一天的12:XX PM

例如:

>> Chronic.parse("1234")
=> Thu Sep 17 00:34:00 -0600 2009
我发现,如果我在小时和分钟之间放一个冒号,就会得到所需的输出:

>> Chronic.parse("12:34")
=> Wed Sep 16 12:34:00 -0600 2009
但是,我希望传递不带冒号的值,如下所示:

>> Chronic.parse("1234")
=> Wed Sep 16 12:34:00 -0600 2009

我必须向解析器传递什么字符串才能将“1234”解释为当天下午12:34

我不确定,但看起来可能是个bug。我猜你会在代码的这个角落结束: