Python 3.x 在Python中从字符串中查找多个日期而不使用解析包

Python 3.x 在Python中从字符串中查找多个日期而不使用解析包,python-3.x,Python 3.x,试图在字符串中查找日期,但当我使用“/”作为日期分隔符时,代码不起作用。此外,如果我输入多个日期。它只返回一个。 我想使用所有有效的日期分隔符,即“/”-“.”,并获取字符串中的所有日期。 另外,我想使用所有的日期格式,如ddmmyy mmddyy yymdd yyymmdd ddmmyyy mmddyyy str = " here is some text in 31-01-2019 my string 01/02/2019 for fun 02.02.2019" match = re.sea

试图在字符串中查找日期,但当我使用“/”作为日期分隔符时,代码不起作用。此外,如果我输入多个日期。它只返回一个。 我想使用所有有效的日期分隔符,即“/”-“.”,并获取字符串中的所有日期。 另外,我想使用所有的日期格式,如ddmmyy mmddyy yymdd yyymmdd ddmmyyy mmddyyy

str = " here is some text in 31-01-2019 my string 01/02/2019 for fun 02.02.2019"
match = re.search('\d{2}-\d{2}-\d{4}', str)
date = dt.strptime(match.group(), '%d-%m-%Y').date()
print(date)
输出:
['31-01-2019','01/02/2019','02.02.2019']


使用此regexp查找字符串中存在的所有日期。

如果字符串中有多个日期,则该字符串的可能重复项不会回答我的问题此语法不适用于date var中的第三行&仍然只返回一个字符串不要复制和粘贴代码。可能存在缩进问题。手动键入,然后查看结果。如果您想使用所有格式,请让我知道。。我将相应地修改答案。我已经做了更改
re.findall(r'\b\d{2}[-\./]\d{2}[-\./]\d{2}\b|\b\d{4}[-\./]\d{2}[-\./]\d{2}\b|\b\d{2}[-\./]\d{2}[-\./]\d{4}\b',lsstr)