Ruby解析日期字符串

时间:2014-01-27 21:22:22

标签: ruby date date-format date-parsing

我需要将下面提到的日期字符串解析为std日期格式。

ruby​​中是否有内置函数可以解析像

这样的东西

2011年12月9日 至 2011-12-09

2 个答案:

答案 0 :(得分:28)

Date.parse已被提及。

我更喜欢Date.strptime。此方法是反向strftime

Date.parse是一个(可能是好的)猜测,当您知道您期望的格式时,Date.strptime可以解析每个日期。

示例:

require 'date'
puts  Date.strptime('December 09, 2011', '%B %d, %Y')

或者如果你有another format where Date.parse fails

require 'date'
puts Date.strptime("28-May-10", "%d-%b-%y") #2010-05-28

答案 1 :(得分:16)

使用Date::parse执行以下操作:

require 'date'
Date.parse('December 09, 2011').to_s # => "2011-12-09"