我正在使用Ruby中的Date字符串,并希望确定字符串是否与时区一起传递(除了简单地解析文本之外)。如果没有提供时区,我想根据其他因素将其转换为某个时区。
示例:
DateTime.parse("2014-01-01T23:59:00")
=> #<DateTime: 2014-01-01T23:59:00+00:00 ((2456659j,86340s,0n),+0s,2299161j)>
DateTime.parse("2014-01-01T23:59:00Z")
=> #<DateTime: 2014-01-01T23:59:00+00:00 ((2456659j,86340s,0n),+0s,2299161j)>
DateTime.parse("2014-01-01T23:59:00PST")
=> #<DateTime: 2014-01-01T23:59:00-08:00 ((2456660j,28740s,0n),-28800s,2299161j)>
问题在于解析“2014-01-01T23:59:00”和“2014-01-01T23:59:00Z”(与祖鲁语)产生相同的结果,当一个指定“祖鲁”和另一个不是。我确定如果没有提供区域,默认行为是假设UTC。
答案 0 :(得分:0)
要检查日期字符串是否以时区结束,您可以使用此正则表达式检查分钟和秒是字符串的结尾:\d{2}:\d{2}$
以下是使用debuggex来说明的一些示例:
\d{2}:\d{2}$