Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 我的日期格式:09/28/2012 16:35:34,我希望使用gsub将日期格式设置为:2012-09-28:16:35:34_Ruby_Regex_Date - Fatal编程技术网

Ruby 我的日期格式:09/28/2012 16:35:34,我希望使用gsub将日期格式设置为:2012-09-28:16:35:34

Ruby 我的日期格式:09/28/2012 16:35:34,我希望使用gsub将日期格式设置为:2012-09-28:16:35:34,ruby,regex,date,Ruby,Regex,Date,可能重复: 我的日期格式:09/28/2012 16:35:34,我希望日期的格式如下:2012-09-28816:35:34,我需要在jruby中编译代码。查找 (\d+)\/(\d+)\/(\d+) ([\d:]+) 取代 $3-$1-$2T$4 您可以看到组(在正则表达式中是()中的部分),$1是第一个组,$2是第二个组,依此类推。基本上,你需要重新排列组中的代码< > />代码>中间和代码> t>代码>小时。 你可能想把日期转换成更有用的东西: require 'date' dt

可能重复:

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

查找

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

$3-$1-$2T$4

您可以看到组(在正则表达式中是
()
中的部分),$1是第一个组,$2是第二个组,依此类推。基本上,你需要重新排列组中的代码< > />代码>中间和<>代码> t>代码>小时。

你可能想把日期转换成更有用的东西:

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)>
当日期格式错误时,这也会引发一个异常,这有助于在出现问题时进行注意


有关更多信息,请参见。

谢谢,如果我需要将我的系统日期(格式为09/28/2012 16:35:34,我正在使用系统日期函数获取)转换为相同格式2012-09-28-16:35:34??
my系统日期=DateTime.strtime(系统日期,%m/%d/%Y%H:%m:%S')。strftime(“%FT%T”)
我猜。。。丑陋但有效
dt.strftime '%FT%T'
# => "2012-09-28T16:35:34"