Quelqu'un connait-il un algorithme permettant de détecter les différences entre 2 chaines afin de les mettres en évidences ?

Exemple :

Original :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
Maître Corbeau, sur un arbre perché,
Tenait en son bec un fromage.
Maître Renard, par l'odeur alléché,
Lui tint à peu près ce langage :
"Hé ! bonjour, Monsieur du Corbeau.
Que vous êtes joli ! que vous me semblez beau !
Sans mentir, si votre ramage
Modifié :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
Maître Corbeau, sur un arbre perché,
Tenait en son bec un fromage.
Et en plus c'était du fromage de chèvre !
Maître Renard, par l'odeur alléché,
Lui tint à peu près ce langage avec un accent canadien:
"Hé ! bonjour, Monsieur du Corbeau.
Que vous êtes joli ! que vous me semblez beau !
Sans mentir, si votre ramage
résultat pouvant être obtenu par l'algorithme :

Maître Corbeau, sur un arbre perché,
Tenait en son bec un fromage.
Et en plus c'était du fromage de chèvre !
Maître Renard, par l'odeur alléché,
Lui tint à peu près ce langage avec un accent canadien:
"Hé ! bonjour, Monsieur du Corbeau.
Que vous êtes joli ! que vous me semblez beau !
Sans mentir, si votre ramage