O que é um algoritmo para diferenciar as duas sequências da mesma maneira que o SO faz na página de versão?
Eu estou tentando diff duas seqüências de caracteres por frase, semelhante à maneira que StackOverflow diffs as duas seqüências de caracteres na página de edições da versão. O que seria um algoritmo para fazer isso? Existem gemas ou outras bibliotecas padrão que fazem isso?
EDIT: eu vi outros algoritmos de diff (Diferir com Ruby) e eles parecem resultar no seguinte:
>> o = 'now is the time when all good men.'
>> p = 'now some time the men time when all good men.'
>> Differ.diff_by_word(o,p).format_as(:html)
=> "now <del class=\"differ\">some</del><ins class=\"differ\">is</ins>
<del class=\"differ\">time </del>the <del class=\"differ\">men </del>time
when all good men."
Observe como as palavras são diferenciadas por palavra? Eu gostaria de alguma maneira de diferenciar mais por frase, então a saída do código acima:
=> "now <del class=\"differ\">some time the men</del><ins class=\"differ\">is
the</ins> time when all good men."
Eu estou esperando muito?