首页 > 解决方案 > 正则表达式根据特定字符串提取日期

问题描述

如果它与特定的正则表达式匹配,我正在尝试提取日期

前任 :

string1 = '10/22/2019 from'
string2 = '12/22/2020 33455SE'
string3 = '7/20/2020 S0023'

我正在尝试提取字符串 2

使用正则表达式:

r'(\d+[/]\d+[/]\d+[-\s\.]\d+)'

如果字符串看起来像,上面使用的正则表达式会给我,"10/22/2019 33455"但是如果如图所示后面有一个字母"33455SE",我的代码就会失败。

有什么帮助吗?

尝试过的代码:

r'(\d+[/]\d+[/]\d+[-\s\.]^\d+)' - Tried to use starts with.

预期输出:只有字符串 2 和字符串 3

12/22/2020
7/20/2020

标签: pythonregexre

解决方案


这有效

import re
a = "3443E hello 10/22/2019 33455SE"
number = re.findall(r"[0-9]{2}[/][0-9]{2}[/][0-9]{4}",a)
print(number[0])

输出 :

10/22/2019

推荐阅读