Нахождение общих блоков - PullRequest
       31

Нахождение общих блоков

3 голосов
/ 23 сентября 2008

У меня есть два файла (f1 и f2), содержащие текст (или двоичные данные).
Как я могу быстро найти общие блоки?

, например
f1: ABC DEF
f2: XXABC XEF

выход:

общие блоки:
длина 4: «ABC» в f1 @ 0 и f2 @ 2 длина 2: «EF» в f1 @ 5 и f2 @ 8

Ответы [ 3 ]

2 голосов
/ 23 сентября 2008

Это отличный инструмент для таких целей. http://sourceforge.net/projects/duplo/

1 голос
/ 23 сентября 2008

Проект PMD с открытым исходным кодом имеет модуль детектора вырезания и вставки, который упоминается на этой странице: http://pmd.sourceforge.net/integrations.html.

1 голос
/ 23 сентября 2008

В Википедии есть некоторый псевдокод для поиска самой длинной общей подстроки между двумя последовательностями данных. В вашем случае вы просто извлекаете из таблицы все общие подстроки, которые не являются префиксами других общих подстрок (т.е. максимальных общих подстрок).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...