如何解决从文本Python识别和提取日期的最佳方法?
我也在寻找解决方案,但找不到任何解决方案,所以我和一个朋友建立了一个工具来完成此任务。我以为我会回来分享一下,以防其他人觉得有用。
这是一个例子:
import datefinder
string_with_dates = '''
Central design committee session Tuesday 10/22 6:30 pm
Th 9/19 LAB: Serial encoding (Section 2.2)
There will be another one on December 15th for those who are unable to make it today.
Workbook 3 (Minimum Wage): due Wednesday 9/18 11:59pm
He will be flying in Sept. 15th.
We expect to deliver this between late 2021 and early 2022.
'''
matches = datefinder.find_dates(string_with_dates)
for match in matches:
print(match)
解决方法
作为我正在从事的大型个人项目的一部分,我试图从各种文本源中分离出内联日期。
例如,我有大量的字符串(通常采用英语句子或语句的形式),采用多种形式:
中央设计委员会会议,星期二10/22 6:30 pm
9/19 LAB:串行编码(第2.2节)
12月15日将举办另一场针对那些今天无法做到的人。
练习册3(最低工资):到期日:星期三9/18 11:59 pm
他将于9月15日出发。
尽管这些日期与自然文本一致,但它们本身都不是特定的自然语言形式(例如,没有“会议将从明天开始两周”,这都是明确的)。
作为对这种处理没有太多经验的人,什么是最好的起点?我已经研究了dateutil.parser
模块和parsedatetime之类的东西,但是这些似乎是
在 您确定日期之后的。
因此,有什么好的方法可以提取日期和多余的文本
input: Th 9/19 LAB: Serial encoding (Section 2.2)
output: ['Th 9/19','LAB: Serial encoding (Section 2.2)']
或类似的东西?这种处理似乎是由Gmail和Apple Mail之类的应用程序完成的,但是可以用Python实现吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。