python匹配目标词

use*_*037 5 python iteration

对于每个目标词,我想检查下一个目标词之前出现的下一个词是否与我在文档中设置的词相对应.如果匹配,我希望它输出为true并写出到txt文件.如果为false,则写出false.

我正在使用正则表达式,但迭代方式很好

import re
re.findall("([a-zA-Z]+) " + tofind, txt)
Run Code Online (Sandbox Code Playgroud)

目标和下一个词:

target word: document
next words: set is complete
Run Code Online (Sandbox Code Playgroud)

样品文件:

我设置的文件现已完成.文件很棒.文件很完整,文件集齐全.文件是完整的文件是好的但不完整.

文档在此摘录中出现了6次,但我希望它返回并将下面的内容输出到txt文件

first document -> true
second document -> false
third document -> false
fourth document -> true
fifth document -> false
sixth document -> false
Run Code Online (Sandbox Code Playgroud)

Ale*_*ggs 1

不要使用正则表达式来完成此任务,字符串拼接就足够了。一个简单方法的例子:

sampleDoc = "Document that I set is complete now. Document is great set. Is document is great complete document set is complete. Document is complete document is good but not complete.".lower()
findWord = "document".lower()
wordToFind = "set is complete".lower()
splitList = sampleDoc.split(findWord)
splitList.pop(0)
for position,phrase in enumerate(splitList):
    if wordToFind in phrase:
        print("Document Number", str(position+1), "-> true")
    else:
        print("Document Number", str(position+1), "-> false")
Run Code Online (Sandbox Code Playgroud)

我们将文本拆分为我们要查找的每个单词,并将其发送到列表中。我们迭代这个列表,如果找到重要的单词,我们输出 true,如果没有,我们输出 false。