import re
from datetime import datetime
text = "System started on 13.06.2025, previous run was 29.02.2024, invalid date 29.02.2023, wrong month 15.13.2025, wrong day 32.01.2025, short format 3.06.2025, noise 12.06.25, finished on 01.01.2026."
# Найти все потенциальные даты в формате DD.MM.YYYY
potential_dates = re.findall(r'\b(\d{1,2})\.(\d{1,2})\.(\d{4})\b', text)
valid_dates = []
for day, month, year in potential_dates:
try:
# Проверяем, что день и месяц имеют 2 цифры
if len(day) != 2 or len(month) != 2:
continue
date_obj = datetime(int(year), int(month), int(day))
valid_dates.append(f"{day}.{month}.{year}")
except ValueError:
continue
print("Корректные даты:")
for date in valid_dates:
print(date)