Extract Words from a file

后端 未结 3 645
野的像风
野的像风 2021-01-13 23:03

I open a file using python to find whether a predefined set of words are present in the opened file or not. I took the predefined set of words in a list and opened the file

3条回答
  •  耶瑟儿~
    2021-01-13 23:41

    import re
    
    def get_words_from_string(s):
        return set(re.findall(re.compile('\w+'), s.lower()))
    
    def get_words_from_file(fname):
        with open(fname, 'rb') as inf:
            return get_words_from_string(inf.read())
    
    def all_words(needle, haystack):
        return set(needle).issubset(set(haystack))
    
    def any_words(needle, haystack):
        return set(needle).intersection(set(haystack))
    
    search_words = get_words_from_string("This is my test")
    find_in = get_words_from_string("If this were my test, I is passing")
    
    print any_words(search_words, find_in)
    
    print all_words(search_words, find_in)
    

    returns

    set(['this', 'test', 'is', 'my'])
    True
    

提交回复
热议问题