mirror of
https://github.com/araddon/dateparse.git
synced 2025-10-26 16:26:14 +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:
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)
|
||||
|
||||
Reference in New Issue
Block a user