-2

可能重复:
Ruby - 将日期格式的字符串更改为另一种格式

我的日期格式:09/28/2012 16:35:34,我希望日期格式为:2012-09-28T16:35:34,我需要在 jruby 中编译代码。

4

2 回答 2

5

您可能希望将日期转换为更有用的内容:

require 'date'
dt = DateTime.strptime "09/28/2012 16:35:34", '%m/%d/%Y %H:%M:%S'
# => #<DateTime: 2012-09-28T16:35:34+00:00 (106107805067/43200,0/1,2299161)>

现在您可以进行任何转换:

dt.strftime '%FT%T'
# => "2012-09-28T16:35:34"

当日期格式错误时,这也会引发异常,这对于在事情中断时进行通知很有用。

有关更多信息,请参阅Date.

于 2012-10-01T12:40:50.067 回答
0

寻找

(\d+)\/(\d+)\/(\d+) ([\d:]+)

用。。。来代替

$3-$1-$2T$4

在这里您可以看到组(在正则表达式中是 中的部分()),$1 是第一个组,$2 是第二个,依此类推。基本上,您需要重新排序放在-中间和T小时之前的组。

于 2012-10-01T12:39:44.913 回答