python - 在 python 中导航文本文件搜索

标签 python search input text-files nltk

这是我正在使用的文本文件的示例:

<Opera>

Tristan/NNP
and/CC
Isolde/NNP
and/CC
the/DT
fatalistic/NN
horns/VBZ
The/DT
passionate/JJ
violins/NN
And/CC
ominous/JJ
clarinet/NN
;/:

正斜杠后面的大写字母是奇怪的标签。我希望能够在文件中搜索诸如 "NNP,CC,NNP" 之类的内容,并让程序返回此段 "Tristan and Isolde"(这三个词)与这三个标签相匹配的一行。

我遇到的问题是我希望用户输入搜索字符串,因此它总是不同的。
我可以读取文件并找到一个匹配项,但我不知道如何从该点向后计数以打印第一个单词或如何查找下一个标签是否匹配。

最佳答案

从要搜索的标签列表动态构建正则表达式:

text = ("Tristan/NNP and/CC Isolde/NNP and/CC the/DT fatalistic/NN horns/VBZ "
    "The/DT passionate/JJ violins/NN And/CC ominous/JJ clarinet/NN")

tags = ["NNP", "CC", "NNP"]
tags_pattern = r"\b" + r"\s+".join(r"(\w+)/{0}".format(tag) for tag in tags) + r"\b"
# gives you r"\b(\w+)/NNP\s+(\w+)/CC\s+(\w+)/NNP\b"

from re import findall
print(findall(tags_pattern, text))

关于python - 在 python 中导航文本文件搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9143406/

相关文章:

python - NetShareAdd 的参数类型

javascript - 选择类型不是复选框的所有输入标签

python - 为什么你可以'\xe 5' be decoded but not '\xe5'?

python - 如何在短句的大型数据集中有效地使用 spacy?

ios - 如何在 UITableViewController 中实现搜索栏?

python - 有什么办法可以使这段代码更快?

php - 从搜索中隐藏 Drupal 节点

Magento - 属性 "input-type"复选框

java - 如何在计算中使用用户输入的字符?

python - 相当于 numpy.unique 的 2D