У меня есть следующая функция, которая получает исходные и измененные строки, а также выделяет в ней измененные слова жирным шрифтом.
def appendBoldChanges(s1, s2):
"Adds <b></b> tags to words that are changed"
l1 = s1.split(' ')
l2 = s2.split(' ')
for i, val in enumerate(l1):
if l1[i].lower() != l2[i].lower():
s2 = s2.replace(l2[i], "<b>%s</b>" % l2[i])
return s2
print appendBoldChanges("britney spirs", "britney spears") # returns britney <b>spears</b>
Он отлично работает на строках с одинаковым количеством слов, но терпит неудачу с разным количеством слов, как sora iro days
и sorairo days
.
Как я могу принять во внимание интервал?