def BoldWord(mot, texte, casse=1):
return casse and texte.replace(mot, "<b>%s</b>"%mot) or SansCasse(mot, texte) #Booléen selon l'argument casse
def SansCasse(mot, texte): #Si la casse n'est pas importante
long = len(mot)
for i in range(0, len(texte)):
sel = texte[i:i+long]
if sel.lower() == mot.lower() and texte[i-3:i]!="<b>":
return SansCasse(mot, texte.replace(sel, "<b>%s</b>" % sel))
return texte
#Exemple d'utilisation: Casse à 1 ou 0 selon l'importance de la casse pour le remplacement
print BoldWord("MonMot", "Mettre en gras MonMot dans ma phrase", 0)