如何使用NLTK捕获带有介词的ORGS或PERSONS?
让我们说text
如下:
'以下信息由罗格斯大学发布:城市创业与经济发展中心(CUEED)于11月前往中国上海,以帮助领导全球S'
我最好输出:
Center for Urban Entrepreneurship and Economic Development
现在我得到:
Center/NNP
for/IN
(PERSON Urban/NNP Entrepreneurship/NNP)
and/CC
(ORGANIZATION Economic/NNP Development/NNP)
我一直试图将命名实体输出转换为字符串并使用正则表达式来捕获单词标签,但是失败了(我的代码如下)。 WOuld非常感谢你的帮助。
for sentence in nltk.sent_tokenize(text):
tokenized = nltk.word_tokenize(sentence)
tagged = nltk.pos_tag(tokenized)
namedEnt = nltk.ne_chunk(tagged, binary=False)
#print str(namedEnt), '|', str(namedEnt).index('was/VBD')
#entities = re.findall(r'(ORGANIZATION|PERSON)\s(.*?)/',str(namedEnt))
print re.findall(r'\/IN.*', str(namedEnt))