我试图搜索并在文件中找到正确的单词
file = ('data.bin', '+r')
Filefind = file.read()
f = raw_input("search a word: ")
While f in Filefind:
print "this word is found!"
这段代码实际上找到了我输入的单词,但即使它没有完全输入,它也会找到该单词 例如,如果我在文件中有“findme”字样,如果我在raw_input中只输入“fi”,脚本就会找到它
如果在文件中找到完整的单词,如何编写一个返回我的脚本?
答案 0 :(得分:4)
将regex
与字边界一起使用:
import re
def search(word, text):
return bool(re.search(r'\b{}\b'.format(re.escape(word)), text))
...
>>> search("foo", "foobar foospam")
False
>>> search("foo", "foobar foo")
True