尝试用基本库第一。
安装:安装PIP parsedatetime
代码:
import parsedatetime
p = parsedatetime.Calendar()
parsed_data = p.parse("A man died on March 22 2002 in an accident..(continues)")
day = parsed_data[0].tm_mday
month = parsed_data[0].tm_mon
year = parsed_data[0].tm_year
在多个日期的情况下,我认为正则表达式将是非常有用的。 代码:
day_pattern : r"(?P<day>(?:[12][0-9]|3[01]|0?[1-9]))(?:th|nd|rd|st)?"
month_pattern : r"(?P<month>jan(?:uary)?|mar(?:ch)?|may|jul(?:y)?|aug(?:ust)?|oct(?:ober)?|dec(?:ember)?|sep(?:tember|t)?|apr(?:il)?|jun(?:e)?|nov(?:ember)?|feb(?:ruary)?)",
year_pattern : r"(?P<year>(?:19|20)?\d\d)",
mm_pattern : r"(?P<month>(?:0?[1-9]|1[012]))",
dd_pattern : r"(?P<day>(?:[12][0-9]|3[01]|0?[1-9]))",
yy_pattern : r"(?P<year>(?:19|20)?\d\d)",
您需要检查每场比赛的位置,并根据这些就可以决定的多个日期。
..thank你这么多的答案..just无疑将它确定如果两个日期在文中给出?我发现它只需要最近的日期 –
更新了答案。正则表达式会给你更好的匹配。 –