1

我试图在文件中搜索并找到正确的单词

 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”,脚本就会找到它

如果在文件中找到完整的单词,如何编写返回 True 的脚本?

4

1 回答 1

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
于 2013-08-05T10:20:04.147 回答