mirror of
https://github.com/araddon/dateparse.git
synced 2024-11-10 11:51:54 +08:00
Add support for dates of the form "yyyy mmm dd" where mmm is an alpha literal
Fixes #141 Signed-off-by: Daniel Ferstay <dferstay@splunk.com>
This commit is contained in:
parent
6b43995a97
commit
ebfdb9cd62
36
parseany.go
36
parseany.go
@ -93,6 +93,8 @@ const (
|
||||
dateAlphaPeriodWsDigit
|
||||
dateWeekdayComma
|
||||
dateWeekdayAbbrevComma
|
||||
dateYearWs
|
||||
dateYearWsMonthWs
|
||||
)
|
||||
const (
|
||||
// Time state
|
||||
@ -388,7 +390,13 @@ iterRunes:
|
||||
// 02 Jan 2018 23:59:34
|
||||
// 12 Feb 2006, 19:17
|
||||
// 12 Feb 2006, 19:17:22
|
||||
if i == 6 {
|
||||
// 2013 Jan 06 15:04:05
|
||||
if i == 4 {
|
||||
p.yearlen = i
|
||||
p.moi = i + 1
|
||||
p.setYear()
|
||||
p.stateDate = dateYearWs
|
||||
} else if i == 6 {
|
||||
p.stateDate = dateDigitSt
|
||||
} else {
|
||||
p.stateDate = dateDigitWs
|
||||
@ -704,6 +712,30 @@ iterRunes:
|
||||
// 18 January 2018
|
||||
// 8 January 2018
|
||||
|
||||
case dateYearWs:
|
||||
// 2013 Jan 06 15:04:05
|
||||
if r == ' ' {
|
||||
p.molen = i - p.moi
|
||||
p.set(p.moi, "Jan")
|
||||
p.dayi = i + 1
|
||||
p.stateDate = dateYearWsMonthWs
|
||||
}
|
||||
case dateYearWsMonthWs:
|
||||
// 2013 Jan 06 15:04:05
|
||||
switch r {
|
||||
case ',':
|
||||
p.daylen = i - p.dayi
|
||||
p.setDay()
|
||||
i++
|
||||
p.stateTime = timeStart
|
||||
break iterRunes
|
||||
case ' ':
|
||||
p.daylen = i - p.dayi
|
||||
p.setDay()
|
||||
p.stateTime = timeStart
|
||||
break iterRunes
|
||||
}
|
||||
|
||||
case dateDigitChineseYear:
|
||||
// dateDigitChineseYear
|
||||
// 2014年04月08日
|
||||
@ -1949,6 +1981,8 @@ iterRunes:
|
||||
// Mon, 02 Jan 2006 15:04:05 MST
|
||||
return p, nil
|
||||
|
||||
case dateYearWsMonthWs:
|
||||
return p, nil
|
||||
}
|
||||
|
||||
return nil, unknownErr(datestr)
|
||||
|
@ -154,6 +154,8 @@ var testInputs = []dateTest{
|
||||
{in: "07 Feb 2004 09:07", out: "2004-02-07 09:07:00 +0000 UTC"},
|
||||
{in: "7 Feb 2004 9:7:8", out: "2004-02-07 09:07:08 +0000 UTC"},
|
||||
{in: "07 Feb 2004 09:07:08.123", out: "2004-02-07 09:07:08.123 +0000 UTC"},
|
||||
/// yyyy mmm dd https://github.com/araddon/dateparse/issues/141
|
||||
{in: "2013 May 02 11:37:55", out: "2013-05-02 11:37:55 +0000 UTC"},
|
||||
// dd-mon-yyyy 12 Feb 2006, 19:17:08 GMT
|
||||
{in: "07 Feb 2004, 09:07:07 GMT", out: "2004-02-07 09:07:07 +0000 UTC"},
|
||||
// dd-mon-yyyy 12 Feb 2006, 19:17:08 +0100
|
||||
|
Loading…
Reference in New Issue
Block a user