【发布时间】:2012-10-17 02:20:37
【问题描述】:
有没有办法(Pattern 或 Python 或 NLTK 等)检测句子中是否包含单词列表。
即
The cat ran into the hat, box, and house. | The list would be hat, box, and house
这可以是字符串处理的,但我们可能有更通用的列表:
即
The cat likes to run outside, run inside, or jump up the stairs. |
List=run outside, run inside, or jump up the stairs.
这可能在段落的中间或句子的结尾,这会使事情变得更加复杂。
我使用 Pattern for python 已经有一段时间了,但我没有看到解决这个问题的方法,我很好奇是否有使用模式或 nltk(自然语言工具包)的方法。
【问题讨论】:
-
你的句子是整个字符串,还是你想在更大的文本中匹配一个句子并只返回那个句子?
-
单词必须按照给定的顺序出现吗?即,您是在寻找子集还是子序列?
-
包含这些单词的字符串是否有效?比如“that”有一个单词“hat”作为子串。
-
抱歉耽搁了,但我不是在寻找一个句子中已知单词的列表。如果有可能有一个句子并且能够知道其中是否有单词列表,我很感兴趣。例如,如果我有:“我喜欢走路、跑步和骑自行车”。我希望我的代码查看这句话并告诉我存在一个列表,它是:步行、跑步和骑自行车。更复杂的是,我不能保证我会有那种确切的格式。我可以在一个列表中有两个单词,等等。我最初的想法是只看倒数第二个单词,如果它是 and,或者然后开始向后阅读“,”作为分隔符
标签: python regex algorithm nlp nltk