#time #nlp #parse

bin+lib two_timer

parser for English time expressions

20 stable releases

2.2.1 Mar 28, 2021
2.2.0 Oct 4, 2020
2.1.0 May 17, 2020
2.0.0 Mar 7, 2020
0.1.0 Dec 29, 2018

#21 in Date and time

Download history 4/week @ 2020-12-24 34/week @ 2020-12-31 23/week @ 2021-01-07 39/week @ 2021-01-14 21/week @ 2021-01-21 43/week @ 2021-01-28 15/week @ 2021-02-04 113/week @ 2021-02-11 64/week @ 2021-02-18 23/week @ 2021-02-25 25/week @ 2021-03-04 229/week @ 2021-03-11 485/week @ 2021-03-18 280/week @ 2021-03-25 41/week @ 2021-04-01 78/week @ 2021-04-08

393 downloads per month
Used in 5 crates

MIT license

79KB
1.5K SLoC

Rust 1.5K SLoC // 0.2% comments Ruby 224 SLoC // 0.0% comments

two-timer

Rust library for parsing English time expressions into start and end timestamps

This takes English expressions and returns a time range which ideally matches the expression. You might use this for registering the temporal extent of an event, say, or finding lines in a log file.

Some expressions it can handle:

  • from now to eternity
  • today
  • tomorrow
  • last month
  • this year
  • 5/6/69
  • June 6, 2010
  • forever
  • 3:00 AM
  • 3AM
  • June '05
  • Monday through next Thursday
  • from mon at 15:00:05 to now
  • 1960-05-06
  • 5000BCE
  • next weekend
  • 2000
  • the nineteenth of March 1810
  • the 5th of November
  • the ides of March
  • the first
  • two seconds before 12:00 PM
  • 1 week after May first
  • 15 minutes around 12:13:43 PM
  • noon on May 6, 1969
  • midnight on May 6, 1969
  • Friday the 13th
  • 2 weeks ago
  • ten seconds from now
  • 5 minutes before and after midnight
  • 1969-05-06 12:03:05
  • since the start of the year
  • since yesterday

The complete API is available at https://docs.rs/two_timer/.

Dependencies

~2.6–4MB
~90K SLoC