2014-01-27 2 views
12

Мне нужно проанализировать строку даты, указанную ниже, в формате std date.Строка даты синтаксиса Ruby

Есть встроенная функция в рубине, что бы разобрать что-то вроде,

9 декабря 2011 в 2011-12-09

ответ

11

ли, как показано ниже, используя Date::parse:

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

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 
Смежные вопросы