Cette petite fonction compare tous les mots de recherche dans un texte donné et si tous les mots de recherche trouvés dans une chaîne de texte renvoie la longueur de la recherche.
Prend également en charge la recherche de chaînes unicode.
#######################################
# find exact words
#######################################
def find_words(text, search):
dText = {}
dSearch = {}
dText = text.split()
dSearch = search.split()
lenText = len(dText)
lenSearch = len(dSearch)
#print dText, lenText
#print dSearch, lenSearch
found_word = 0
for text_word in dText:
for search_word in dSearch:
if hash(search_word) == hash(text_word):
found_word += 1
if found_word == lenSearch:
return lenSearch
else:
return False
usage:
find_words('çelik güray ankara', 'güray ankara')