как сравнить числа по формату написания в python

это часть блока кода бота планировщика и мне нужно сравнить "date = command[0].lower()" с форматом написания даты (дд.мм), и если верно то код продолжается если нет просьба ввести правильно. Но не нашел информацию как сравнить по формату. Помогите пожалуйста.

блок кода:

@bot.message_handler(content_types=['text'])
def add_task(message):
    command = message.text.split(maxsplit=1)
    if len(command) > 1:
        date = command[0].lower()
        *if date == # формат должен быть датой (пример: 01.01)*:
            task = command[1]
            add_todo(date, task)
            bot.send_message(message.chat.id, f'Задача: {task} поставлена на дату: {date}')

    else:
        bot.send_message(message.chat.id,
                         'Нужно так (пример): "01.01 доесть салат", попробуйте еще раз (вызовите /add)')

Ответы (1 шт):

Автор решения: Швеев Алексей

Сравнивать формат можно через регулярные выражение, в нашем случае это будет \d{1,2}\d{1,2}. Что бы сверить дату по регулярному выражению тебе надо вначале импортировать модуль re (import re) и перед выполнением основной программы скомпилировать её (p = re.compile('\d{1,2}\d{1,2}')) Теперь проверяем на совпадения:

if p.match(date):#date - строка с датой
    #твой код

Если же тебе хочется ещё и получить первое и второе число даты, то тогда придётся заменить регулярное выражение на (\d{1,2})\.(\d{1,2}), и код будет выглядеть так:

m = p.match(textDate)
if m:
    date = m.group(1)
    month = m.group(2)

Вообще советую почитать про регулярные выражения, это очень мощный инструмент https://habr.com/ru/post/115825/

→ Ссылка