如何从String Python中提取日期

时间:2017-02-08 13:45:50

标签: python python-2.7 python-3.x

我有一个String Like

  

“最初发布于2016年5月9日。通过查询3 j ....”

如何使用python提取日期?

我试过这段代码:

dStr = "Originally Posted on 09 May, 2016. By query 3 j...."
date_st = re.findall("(\d+\ \w+,)", dStr)

打印date_st,我有:

[''09月',']

我该怎么办?

2 个答案:

答案 0 :(得分:4)

您忘记在'之后添加年份,只需要添加' \ d +。'很好。

re.findall("(\d+\ \w+, \d+\.)", dStr)

你会得到这个:

'09 May, 2016.'

答案 1 :(得分:1)

你快到了。只需在,之后的年份添加4位数字。最好使用[a-z]+代替\w+来匹配月份名称,因为\w匹配_0-9(以及字母表)。

re.findall(r'\d+\s[a-z]+,\s\d{4}',s,re.I)