fuzzy-dates: Libary for parsing dates in strings in varied formats.

[ bsd3, library, parsing ] [ Propose Tags ]

Please see the README on GitHub at https://github.com/ReedOei/fuzzy-dates#readme


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1.0.0, 0.1.0.1, 0.1.0.2, 0.1.1.0, 0.1.1.1, 0.1.1.2
Change log ChangeLog.md
Dependencies base (>=4.7 && <5), fuzzy-dates, hourglass, hspec, lens, parsec [details]
License BSD-3-Clause
Copyright 2018 Reed Oei
Author Reed Oei
Maintainer oei.reed@gmail.com
Category Parsing
Home page https://github.com/ReedOei/fuzzy-dates#readme
Bug tracker https://github.com/ReedOei/fuzzy-dates/issues
Source repo head: git clone https://github.com/ReedOei/fuzzy-dates
Uploaded by ReedOei at 2018-05-04T22:45:22Z
Distributions LTSHaskell:0.1.1.2, NixOS:0.1.1.2, Stackage:0.1.1.2
Reverse Dependencies 2 direct, 0 indirect [details]
Executables fuzzy-dates-exe
Downloads 3981 total (21 in the last 30 days)
Rating 1.75 (votes: 2) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2018-05-04 [all 1 reports]

Readme for fuzzy-dates-0.1.1.0

[back to package description]

fuzzy-dates

Build Status

fuzzy-dates is a Haskell library for parsing dates when you don't know/care to specify the format of the dates beforehand. It returns dates and times in the hourglass format.

It is heavily based off of https://gitlab.com/doshitan/hourglass-fuzzy-parsing, which had not been updated for over 2 years at the time of writing, so I created this library, and added numerous new date formats to it.

Quickstart

Import the main module, then call one of the extract dates functions, like so:

>>> import Data.Dates.Parsing
>>> extractDatesY 2018 "The party will be on 6/9"
[Date 2018 June 9]
>>> import Data.Dates.Parsing
>>> extractDateTimes "This morning, 06.07.16 at 7:35 AM, the fire was stopped." :: IO [DateTime]
[DateTime {dtDate = Date {dateYear = 2016, dateMonth = July, dateDay = 6}, dtTime = TimeOfDay {todHour = 7h, todMin = 35m, todSec = 0s, todNSec = 0ns}}]