gpt4 book ai didi

python - NLTK:如何根据句子图提取信息?

转载 作者:行者123 更新时间:2023-12-01 03:50:50 27 4
gpt4 key购买 nike

我知道您可以使用名词提取从句子中提取名词,但如何使用句子覆盖/映射来提取短语?

例如:

Sentence Overlay:

"First, @action; Second, Foobar"

Input:

"First, Dance and Code; Second, Foobar"

I want to return:

action = "Dance and Code"
  • 普通名词提取不起作用,因为它并不总是名词
  • 句子的措辞方式不同,因此不能是单词[x] ...因为单词的位置发生了变化

最佳答案

您可以稍微重写字符串模板,将它们转换为正则表达式,然后查看哪个(或哪些)匹配。

>>> template = "First, (?P<action>.*); Second, Foobar"
>>> mo = re.search(template, "First, Dance and Code; Second, Foobar")
>>> if mo:
print(mo.group("action"))
Dance and Code

您甚至可以将现有字符串转换为这种正则表达式(在转义 .?*() 等正则表达式元字符之后)。

>>> template = "First, @action; (Second, Foobar...)"
>>> re_template = re.sub(r"\\@(\w+)", r"(?P<\g<1>>.*)", re.escape(template))
>>> print(re_template)
First\,\ (?P<action>.*)\;\ \(Second\,\ Foobar\.\.\.\)

关于python - NLTK:如何根据句子图提取信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38291460/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com