【发布时间】:2015-04-17 21:29:01
【问题描述】:
我在尝试识别段落中是否包含日期信息时遇到了这个问题。那么问题来了:
我们不知道日期字符串可能出现在哪里。一段类似于“我们想将约会定在 11 月 15 日。然后我们会......”。所以我们不能直接使用 DateTime.parse()
日期的格式是任意的,可以是“11月15日”或“08/21/1988”或“本月5日”等更正式的形式。
鉴于日期信息可以有多种形式,因此不太可能涵盖所有情况,我只想涵盖尽可能多的情况。我想,我能想出的轻量级解决方案是正则表达式……这又是一个巨大的表达式。有谁知道是否有更好的解决方案或可用的正则表达式?
(P.S. 我更喜欢更轻量级的方法,机器学习之类的方法可能更通用,但不适用于我这里的任务)
【问题讨论】:
-
用可能的格式创建一个列表。检查是否有任何单词或单词组与列表中的任何可能格式匹配。
-
您可以为每种可能的日期格式编写一个正则表达式,然后对每个正则表达式的文本运行搜索。
-
除非您可以预先定义什么是 date 且没有任何歧义,否则不会有简单的解决方案。
-
类似post