为了账号安全,请及时绑定邮箱和手机立即绑定

Python - 如何在 NLTK 中解析后提取名词短语

Python - 如何在 NLTK 中解析后提取名词短语

隔江千里 2022-06-28 10:17:56
我想从使用 NLTK 的解析文本中提取名词短语,但我不知道该怎么做。我仍在寻找它,但还没有运气。所以我不得不在这里问。解析的文本在列表中,它们是这样的:(S the/DT (NP phone/NN) has/VBZ a/DT (NP good/JJ screen/NN) ./.)(S (NP ipod/NN) is/VBZ the/DT best/JJS (NP mp3/NN player/NN) ./.)(S  does/VBZ  the/DT  (NP player/NN play/NN dvd/NN)  with/IN  audio/JJ  and/CC  (NP video/NN)  ?/.)之前,我使用TextBlob提取名词短语,但由于某种原因,第一句没有提取“电话”,只有“好屏幕”。这就是为什么我要回去使用 NLTK。
查看完整描述

1 回答

?
牧羊人nacy

TA贡献1862条经验 获得超7个赞

我想这就是你要找的:


import re

s = """(S the/DT (NP phone/NN) has/VBZ a/DT (NP good/JJ screen/NN) ./.)

(S (NP ipod/NN) is/VBZ the/DT best/JJS (NP mp3/NN player/NN) ./.)

(S

  does/VBZ

  the/DT

  (NP player/NN play/NN dvd/NN)

  with/IN

  audio/JJ

  and/CC

  (NP video/NN)

  ?/.)"""


print(re.findall("(\w+)/NN", s))

re.findall()将搜索整个字符串以查找匹配项。以上尝试查找并返回括号中的(\w+)内容,这意味着作品,然后是/NN


查看完整回答
反对 回复 2022-06-28
  • 1 回答
  • 0 关注
  • 199 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号