python-3.x - 使用 nltk 和 pos 标记从文本中提取日期,python
问题描述
我正在尝试从格式为January 2017 to February 2018或Jan 2018 to Feb 2018的文本中提取日期。我正在使用 nltk 并且我正在获取每个句子的 pos 标签。我想提取日期范围内的所有日期的元组,例如January 2017 to February 2018。我如何获得相关信息。目前我正在使用正则表达式的模式匹配并提取其中包含一组单词的句子。有没有其他更好的方法以及如何捕获所需的元组。
我的代码:
res_lines = []
for res in parsed_resume:
try:
text = res['content']
lines = [line.strip() for line in text.split("\n") if len(line) > 0]
lines = [nltk.word_tokenize(line) for line in lines]
lines = [nltk.pos_tag(line) for line in lines]
except(AttributeError) as e:
pass
res_lines.append(lines)
res_lines 包含句子的所有标记化和 pos 标签的列表。为了捕捉这种模式,我可以捕捉到 NNP 之后是 CD 的邮资,用于 2018 年 1 月(NNP)(CD)。
示例文本:
JOB DETAILS
FROM TO COMPANY JOB TITLE
AUGUST 2019 OCTOBER 2019 ALMANSOORI PRODUCTION SERVICE, OMAN.
JUNE 2019 JULY 2019 ALMANSOORI PRODUCTION SERVICE, KENYA.
JANUARY 2018 MAY 2019 ALMANSOORI PRODUCTION SERVICE, OMAN.
JUNE 2015 DECEMBER 2017 GAS AND OILFIELD SERVICES COMPANY(GOFSCO)
SEPTEMBER 2010 JUNE 2015 OIL TEST WELL SERVICE LIMITED
我如何执行这个逻辑?
解决方案
推荐阅读
- linux - 从日志中过滤特定的日期和时间范围 - 已解决
- react-native - React Native 0.61.2:pod install 抛出无法读取未定义的属性“projectPath”
- json - ICDI 中的 REG_EXTRACT 和 REG_REPLACE
- c# - C# WPF 自定义验证规则不会触发
- powershell - 如何使用 Powershell 将企业资源添加到 Project Online。没有运气
- c++ - 包含 std::function 回调的多个包装器的 std::vector 不起作用
- facebook - 如何将 Phaser 网页游戏变成 Facebook 即时游戏?
- python - Windows的Anaconda安装不起作用
- html - Materialise CSS:在移动端将水平卡片变为垂直卡片
- powershell - 通过powershell查找唯一的文件ID