Gem Chronic


Chronic это парсер "человеческих" дат и времени, написанный на чистом Ruby. 

УСТАНОВКА

RubyGems

$ [sudo] gem install chronic

GitHub

$ git clone git://github.com/mojombo/chronic.git
$ cd chronic && gem build chronic.gemspec
$ gem install chronic-.gem

ИСПОЛЬЗОВАНИЕ

Строки, содержащие дату или время или дату и время, написанные естественным для человека языком разбираются методом Chronic.parse.
require 'chronic'

Time.now   #=> Sun Aug 27 23:18:25 PDT 2006

Chronic.parse('tomorrow')
  #=> Mon Aug 28 12:00:00 PDT 2006

Chronic.parse('monday', :context => :past)
  #=> Mon Aug 21 12:00:00 PDT 2006

Chronic.parse('this tuesday 5:00')
  #=> Tue Aug 29 17:00:00 PDT 2006

Chronic.parse('this tuesday 5:00', :ambiguous_time_range => :none)
  #=> Tue Aug 29 05:00:00 PDT 2006

Chronic.parse('may 27th', :now => Time.local(2000, 1, 1))
  #=> Sat May 27 12:00:00 PDT 2000

Chronic.parse('may 27th', :guess => false)
  #=> Sun May 27 00:00:00 PDT 2007..Mon May 28 00:00:00 PDT 2007

ПРИМЕРЫ

Chronic может разобрать огромное количество вариантов написания дат и времени. Ниже есть несколько примеров написания.
  • thursday
  • november
  • summer
  • friday 13:00
  • mon 2:35
  • 4pm
  • last week tuesday
  • tomorrow at 6:45pm
  • afternoon yesterday
  • 5 months before now
  • 7 hours ago
  • 7 days from now
  • in 3 hours
  • 1 year ago tomorrow
  • 3 months ago saturday at 5:00 pm
  • 7 hours before tomorrow at noon
  • 3rd wednesday in november
  • 3rd month next year
  • 3rd thursday this september
  • 4th day last week

No comments:

Post a Comment