Size: a a a

Клуб Программистов

2021 August 24

CV

Captain Jack Vielfra... in Клуб Программистов
Я вроде запилил минимально жизнеспособную версию библиотеки
источник

CV

Captain Jack Vielfra... in Клуб Программистов
Оттестированную
источник

CV

Captain Jack Vielfra... in Клуб Программистов
Завтра наконец-то буду клиентскую часть пилить
источник
2021 August 26

CV

Captain Jack Vielfra... in Клуб Программистов
источник

CV

Captain Jack Vielfra... in Клуб Программистов
Переслано от Captain Jack Vielfra...
Лол. Кек. Написал обработчики извлечения дат для парсера. По идее,все должно быть ок. Запускаю - тесты падают. Оказывается, библиотека парсинга дат на гошке ( https://github.com/araddon/dateparse ,единственная мной найденная пока что) не правильно парсит. Например,  из "09.Apr.2020" у нее получается 01.09.2020. Такое чувство, будто при генерации строки кто то случайно поменял местами месяц и день. чет боюсь теперь такой либой пользоваться. Буду значит свою либу пилить.
источник

CV

Captain Jack Vielfra... in Клуб Программистов
@JCodePeace есть идеи или либы, чтоб не страдать, запиливая новую либу для обработки дат?
источник

JF

Java Fuck You in Клуб Программистов
А что именно тебе нужно? Просто дату обработать?
источник

CV

Captain Jack Vielfra... in Клуб Программистов
любую строку с датой перевести в тип time.Time
источник

CV

Captain Jack Vielfra... in Клуб Программистов
вот мои тесты к примеру. я из SMEsDates хочу получить PrepDates. нумерацию в Numerate я удалю заранее, но как данные парсить дальше? чтобы распарсить ее через встроенную либу го, то нужно знать ее формат. а я не знаю.
//NUMBER
   //____Simple_without_numerate
   {
     TestName:  "Simple/Dot/American",
     SMEsDates: "09.Apr.2020",
     Type:      Number,
     PrepDates: []string{ //date := "1999-12-31"

       "2020-04-09",
     },
   },
   {
     TestName:  "Simple/Dot/American/full",
     SMEsDates: "01.June.2020",
     Type:      Number,
     PrepDates: []string{ //date := "1999-12-31"

       "2020-06-01",
     },
   },

   {
     TestName:  "Simple/Dash/American",
     SMEsDates: "27-May-20",
     Type:      Number,
     PrepDates: []string{ //date := "1999-12-31"

       "2020-05-27",
     },
   },

   {
     TestName:  "Simple/Dot/American/CAPS",
     SMEsDates: "25.FEB.2021",
     Type:      Number,
     PrepDates: []string{ //date := "1999-12-31"

       "2021-02-25",
     },
   },
   {
     TestName:  "Simple/Space/American",
     SMEsDates: "27 May 2020\n27 May 2020",
     Type:      Number,
     PrepDates: []string{ //date := "1999-12-31"

       "2020-05-27", "2020-05-27",
     },
   },
   {
     TestName:  "Simple/Slash",
     SMEsDates: "04/14/2020\n12/14/2020",
     Type:      Number,
     PrepDates: []string{ //date := "1999-12-31"

       "2020-04-14", "2020-12-14",
     },
   },
   //____closed[Simple_without_numerate]
   //____Numerate type
   {
     TestName:  "Numerate/Dot/Russian",
     SMEsDates: "1. 03.апр.2020\n2. 03.апр.2020",
     Type:      Number,
     PrepDates: []string{ //date := "1999-12-31"

       "2020-04-03", "2020-04-03",
     },
   },
   {
     TestName:  "Numerate/Dot",
     SMEsDates: "1. 30.11.2020\n2. 01.12.2020\n3. 09.12.2020\n4. 09.12.2020",
     Type:      Number,
     PrepDates: []string{ //date := "1999-12-31"

       "2020-11-30", "2020-12-01", "2020-12-09", "2020-12-09",
     },
   },
   {
     TestName:  "Numerate/American",
     SMEsDates: "1. 08-APR-2020\n2. 08-APR-2020",
     Type:      Number,
     PrepDates: []string{ //date := "1999-12-31"

       "2020-04-08", "2020-04-08",
     },
   },
   {
     TestName:  "Numerate/Dot/American",
     Type:      Number,
     SMEsDates: "1. 14.apr.2020\n2. 14.apr.2020\n3. 17.apr.2020\n4. 17.apr.2020",
     PrepDates: []string{ //date := "1999-12-31"

       "2020-04-14", "2020-04-14", "2020-04-17", "2020-04-17",
     },
   },

   {
     TestName:  "Numerate/Slash",
     Type:      Number,
     SMEsDates: "1. 03/03/2021\n2. 03/03/2021",
     PrepDates: []string{ //date := "1999-12-31"

       "2021-03-03", "2021-03-03",
     },
   },
   {
     TestName:  "Numerate/Dash/American",
     Type:      Number,
     SMEsDates: "1. 17-APR-2020\n2. 17-APR-2020",
     PrepDates: []string{ //date := "1999-12-31"

       "2020-04-17", "2020-04-17",
     },
   },
   {
     TestName:  "Numerate/Dash/American/CAPS",
     Type:      Number,
     SMEsDates: "1. 14-MAY-2020\n2. 15-MAY-2020",
     PrepDates: []string{ //date := "1999-12-31"

       "2020-05-14", "2020-05-15",
     },
   },
   {
     TestName:  "Numerate/Dot/American/CAPS",
     Type:      Number,
     SMEsDates: "1. 11.JUN.2020\n2. 11.JUN.2020",
     PrepDates: []string{ //date := "1999-12-31"

       "2020-06-11", "2020-06-11",
     },
   },
   {
     TestName:  "Numerate/Space/American",
     Type:      Number,
     SMEsDates: "1. 09 Jul 2020\n2. 09 Jul 2020",
     PrepDates: []string{ //date := "1999-12-31"

       "2020-07-09", "2020-07-09",
     },
   },

   //____closed[Numerate type]

   //____closed[Number]
источник

JF

Java Fuck You in Клуб Программистов
А зачем тебе покрывать все типы дат?
источник

CV

Captain Jack Vielfra... in Клуб Программистов
Такая задача в проекте. Нужно сделать генератор писем, и в exel записаны данные. В графе даты в разноформате записана дата. И мне нужно ее валидировать (иногда встречалось 221 марта), привести к time.time, и вставить в шаблон в нужном формате
источник

JF

Java Fuck You in Клуб Программистов
А time.Parse тебе не подходит?
источник

CV

Captain Jack Vielfra... in Клуб Программистов
func Parse(layout, value string) (Time, error).
Я layout не знаю. Мне либо сначала нужно будет писать определитель формата, либо нз что придумать.
источник

JF

Java Fuck You in Клуб Программистов
Тогда сложно конечно
источник

JF

Java Fuck You in Клуб Программистов
Если либ нет, то попробуй написать самостоятельно, но как-то много кейсов получается
источник

CV

Captain Jack Vielfra... in Клуб Программистов
Да(
источник

CV

Captain Jack Vielfra... in Клуб Программистов
источник
2021 August 27

CV

Captain Jack Vielfra... in Клуб Программистов
Сделал на регулярках
источник

CV

Captain Jack Vielfra... in Клуб Программистов
Какой ж каеф, когда все тесты положительны
источник

Wn

Write name in Клуб Программистов
насколько все?
источник