GO Разбор пользовательского времени - PullRequest
0 голосов
/ 30 апреля 2020

Я пытаюсь разобрать дату в произвольном формате - ddmmmyyyy. например:

15may1997
dd 15 
mmm may 
yyyy 1997

Это мой код:

const customFormat = "02jan2006"
t, err := time.Parse(customFormat, "15may1997")
if err != nil {
    fmt.Println(err)
}

И это вывод:

parsing time "15may1997" as "02jan2006": cannot parse "may1997" as "jan"

Синтаксический анализ выполняется только при смене дня:

t, err := time.Parse(customFormat, "15jan2006")

Я пытался прочитать это и это и другие статьи, но не мог понять, как настроить мой формат.

Что я здесь не так делаю?

Спасибо.

1 Ответ

1 голос
/ 30 апреля 2020

Golang time.Parse анализирует отформатированную строку на основе макета и возвращает значение времени, которое оно представляет. Макет, определяющий формат: С учетом регистра и имеет фиксированные предопределенные значения.

Поэтому вам нужно обновить customFormat = "02jan2006" до "02Jan2006"

Ниже приведен список регистрозависимых заполнителей для различных частей даты и времени.

--------------- + ------------ +
Type            | Placeholder  |
--------------- + ------------ +
Year            | 2006         |
Year            | 06           | 
Month           | 01           |
Month           | 1            |
Month           | Jan          |
Month           | January      |
Day             | 02           |
Day             | 2            |
Week day        | Mon          |
Week day        | Monday       |
Hours           | 03           |
Hours           | 3            |
Hours           | 15           |
Minutes         | 04           |
Minutes         | 4            |
Seconds         | 05           | 
Seconds         | 5            |
AM or PM        | PM           | 
Miliseconds     | .000         |
Microseconds    | .000000      |
Nanoseconds     | .000000000   |
Timezone offset | -0700        |
Timezone offset | -07:00       |   
Timezone offset | Z0700        |  
Timezone offset | Z07:00       |   
Timezone        | MST          |
--------------- + ------------ +
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...