2
0
mirror of https://github.com/araddon/dateparse.git synced 2025-10-26 08:16:12 +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:
Daniel Ferstay
2021-11-09 20:58:30 -08:00
parent 6b43995a97
commit ebfdb9cd62
2 changed files with 37 additions and 1 deletions

View File

@@ -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)