如何在Python中从字符串中提取日期?

如何在Python中从字符串中提取日期?

**在本文中,我们将了解如何从Python字符串中提取日期。 **

第一种技术使用正则表达式。导入re库并安装它(如果尚未安装)以使用它。导入re库后,我们可以使用正则表达式 \d{4}-\d{2}-\d{2}

要从字符串中提取日期,必须首先了解日期的格式。要提取日期,只需使用正则表达式和“datetime.datetime.strptime”进行解析。例如,如果您的日期是以以下格式之一显示的字符串 YYYY−MM−DD ,则可以使用下面的代码提取和解析它。

阅读更多:Python 教程

示例

在下面给出的示例中,我们将字符串作为输入,并尝试使用正则表达式查找字符串中的日期 −

import re, datetime
str1 = "我的出生日期是2006-11-12"

print("给定的字符串是")
print(str1)

day = re.search('\d{4}-\d{2}-\d{2}', str1)
date = datetime.datetime.strptime(day.group(), '%Y-%m-%d').date()

print("字符串中的日期是")
print(date)
Python

输出

上面示例的输出如下所示−

给定的字符串是
我的出生日期是2006-11-12
字符串中的日期是
2006-11-12
Python

使用dateutil()模块

第二种方法是使用 dateutil() 库的解析器类的解析方法。此方法返回字符串中的任何日期。我们应发送模糊参数并将其设置为True,并且格式应为 YYYY−MM−DD 。此方法计算字符串中的日期并将其作为输出返回。

示例

在下面给出的示例中,我们将字符串作为输入并尝试查找其中是否存在日期 −

from dateutil import parser
str1 = "我的出生日期是2006-11-12"

print("给定的字符串是")
print(str1)

date = parser.parse(str1, fuzzy=True)
print("字符串中的日期是")
print(str(date)[:10])
Python

输出

上例的输出如下所示−

给定的字符串是
我的出生日期是2006-11-12
字符串中的日期是
2006-11-12
Python

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册