trouver une correspondance exacte pour la chaîne

J'ai utilisé la fonction suivante pour trouver la correspondance exacte des mots dans une chaîne de caractères.

def exact_Match(str1, word):
    result = re.findall('\\b'+word+'\\b', str1, flags=re.IGNORECASE)
    if len(result)>0:
        return True
    else:
        return False

exact_Match(str1, word)

Mais j'obtiens une correspondance exacte pour les deux mots "prix" et "primé" lorsqu'elle ne devrait être primé pour la chaîne suivante.

str1 = "award-winning blueberries"
word1 = "award"
word2 = "award-winning"

Comment puis-je obtenir tel que re.findall va correspondre à des mots, avec des traits d'union et d'autres signes de ponctuation?

OriginalL'auteur lost9123193 | 2013-05-27