Обработка и форматирование даты ввода разных вариаций python
Немогу придумать функцию обработки даты от пользователя. Тоесть пользователь может ввести дату в разных вариациях например? 01012023, 01,01,2023, 01.01.2023, 01/01/2023 и возможно ещё что то, и надо привести всё это к 01.01.2023. Пробовал с библиотекой dateparser, но при вводе 01012023 выдаёт None. Подскажите пожалуйста, может есть готовые библиотеки или ваши наработки. Заранее Спасибо!
Ответы (1 шт):
Автор решения: Швеев Алексей
→ Ссылка
В вашем случае вряд ли поможет какая либо библиотека. Лично я бы сделал с помощью регулярных выражений:
import re;
pattern = r"(\d{2})[^0-9]?(\d{2})[^0-9]?(\d{4})";
match = re.fullmatch(pattern, "01,01,2023")
if (match):
print(f"{match[1]}.{match[2]}.{match[3]}")
Ссылка на регулярку: https://regex101.com/r/NMFJAc/2
Если вы хотите больше форматов, то напишите, обновлю регулярку