Salut,

Je me retrouve devant un problème que je sais résoudre humainement, mais pas "mécaniquement"...

j'ai deux textes A et B, dans un premier temps, je repère tous les passages communs, ça c'est fait, y'a pas de problème, j'obtiens une liste de tuples, où chaque tuple est composé de trois éléments :
(index de début dans A, index de fin dans A) , (index de début dans B, index de fin dans B) , "texte en commun"

concrètement, pour les deux textes suivants :
'fouimnqdononmlie' et 'kjdiouifjlsdnon'
j'obtiens la liste de tuple suivants:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
( 9, 12), (12, 15), 'non'
( 1,  4), ( 4,  7), 'oui'
(14, 15), ( 3,  4), 'i'
(13, 14), ( 9, 10), 'l'
( 7,  8), ( 2,  3), 'd'
( 0,  1), ( 7,  8), 'f'
J'aimerais maintenant travailler ces données de façon à obtenir ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
( 1,  4), ( 4,  7), 'oui'
( 7,  8), ( 2,  3), 'd'
( 9, 12), (12, 15), 'non'
'oui' est bien avant 'd' dans les deux textes, et 'd' avant 'non' dans les deux textes. Je ne sais pas pourquoi, mais je n'arrive pas à établir la logique algorythmique me permettant d'obtenir ce résultat depuis les données précédements obtenues...
Quelqu'un pourrait-il m'orienter ?