ich bin neu bei Python, so hoffe ich, dass meine Fragen nicht so dümmlich sind, wie ich mich fühle

Ich arbeite an eine regular expression, die die unterschiedlichen Datumformate nehmen soll. Ich habe 3 verschiedenen Formate:
JJJJ-MM-TT
TT.MM.JJJJ
MM/TT/JJJJ
Ich habe so das geschrieben:
REGEX_DATE_1 =re.compile(r"""
(?P<year1>\d\d\d\d)-(?P<month1>\d?\d)-(?P<day1>\d?\d)|
(?P<day1>\d?\d).(?P<month1>\d?\d).(?P<year1>\d\d\d\d)|
(?P<month1>\d?\d)/(?P<day1>\d?\d)/(?P<year1>\d\d\d\d)\s*$""", re.UNICODE | re.X )
aber der Compiler zeigt der Error:
Error: redefinition of group name 'day1' as group 4; was group 3
Wo liegt den Fehler und gibt es andere art das zu machen Ohne 9 unterschiedlichen groups zu definieren (year1a, year1b,...usw).
Danke im Voraus
Josef