【发布时间】:2013-04-04 21:39:36
【问题描述】:
我正在 NLTK 中加载带有 POS 标记的语料库,我想找到某些涉及 POS 标记的模式。这些模式可能非常复杂,包括许多不同的 POS 标签组合。 示例输入字符串:
我们/PRP花了/VBD一些/DT时间/NN阅读/NN约/IN/DT 历史/JJ 重要性/NN 的/IN 茶/NN 在/IN 韩国/NNP 和/CC 华/NNP和/CC当时/RB品/VBD最/DT最/JJS贵/JJ 绿茶/JJ茶/NN I/PRP有/VBP曾经/RB见过/VBN./.
在这种情况下,POS 模式类似于:(IN) (THE)? (NNP) (CC)? (NNP) ...
我正在加载我的语料库:
reader = TaggedCorpusReader(corpus_dir, r'.*\.pos')
显然,我可以使用 Python 的 re 包做到这一点,但这样的正则表达式很快就会变得难以理解、调试和更新其他开发人员。
在 NLTK 中最优雅的方式是什么?是否有辅助函数可以在带有 POS 标记的文本中找到比通常的正则表达式更具可读性的模式?
谢谢
【问题讨论】:
-
也许你可以提供一个示例字符串?
-
我添加了一个例子。