Хронический разбор месяца / дня - PullRequest
2 голосов
/ 05 августа 2011

Я использую Chronic для разбора дат, и он разбирает строку «8/15» как 16 августа 2015 года.

Есть какие-нибудь идеи о том, как заставить Chronic признать 8/15 15 августа текущего года?

Вот код теста:

Chronic.parse('8/15') #=> 'Sun Aug 16 12:00:00 -0400 2015'

Ответы [ 2 ]

0 голосов
/ 05 августа 2011

Лучший способ сделать это - использовать обычный разбор DateTime, предоставляемый Ruby.В качестве примера вы можете разобрать дату, позвонив по телефону:

ruby-1.9.2-p290 :001 > require 'date'
 => true 
ruby-1.9.2-p290 :002 > DateTime.strptime("8/15", "%m/%d")
 => #<DateTime: 2011-08-15T00:00:00+00:00 (4911577/2,0/1,2299161)> 
ruby-1.9.2-p290 :003 > 
0 голосов
/ 05 августа 2011

В качестве опции:

irb(main):016:0> Chronic.parse("#{Time.now.year}/8/15")
=> 2011-08-15 12:00:00 +0300
...