Python Regex - 在日期之前或之后高效

标签 python regex date

我正在尝试用 Python 编写日期正则表达式。虽然我有一个有效的正则表达式,但它似乎过于复杂,但我不确定如何更改逻辑以便日期数字可以出现在月份之前或之后。例如日期可以写成:

12 December 2014

December 12 2014

捕获第一次约会的基本正则表达式是:

re.compile(r'\d{1,2}\s+(?:November|December)(?:\s+\d{2,4})?

要捕获我可以使用的第二个:

re.compile(r'(?:November|December)\s+\d{1,2}\s+(?:\s+\d{2,4})?

我如何将它们组合成一个正则表达式,使日期数字 (12) 只能在月份名称之前或之后出现一次?

最佳答案

re.compile(r'((\d{1,2}\s+(?:November|December))|((?:November|December)\s+\d{1,2}\s+))(?:\s+\d{2,4})?')

关于Python Regex - 在日期之前或之后高效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27135635/

相关文章:

regex - 如何从正则表达式中获取所有匹配项?

mysql - 在可能存在空值的表上计算每 12 个月的累积值

javascript - NetSuite RESTlet,提交日期/时间时区问题

java - 将日期从字符串类型转换为日期数据类型时出现类转换异常

CSV文件的python Dictread,数据中包含NUL字节

python - 以编程方式阅读、突出显示、保存 PDF

c# - 在文档中查找 HTML 字符串

javascript - 匹配没有标签的 DOM 文本?

Python-从二进制数据读取二维数组

python - Jupyter 笔记本上的 Quandl : LimitExceededError