因此日期可以采用不同的格式,例如DD / MM / YYYY或DD / MM或DD-MM-YYYY或DD-MM或DD月或DDth月或DDth月。对于这些许多情况,至少我正在尝试找到一种优化的方法来从输入字符串(电子邮件)中提取它。除了正则表达式还有其他方法吗?
答案 0 :(得分:1)
如果您不想打扰正则表达式(这显然是最好的解决方案),您仍然可以查看已经实现的库,例如 datefinder :
例如,这个人为您完成了在文本中查找任何日期的工作:
https://github.com/akoumjian/datefinder
要安装: 点安装日期查找器
import datefinder
string_with_dates = "entries are due by January 4th, 2017 at 8:00pm
created 01/15/2005 by ACME Inc. and associates."
matches = datefinder.find_dates(string_with_dates)
for match in matches:
print match
# Output
2017-01-04 20:00:00
2005-01-15 00:00:00