Инструмент для слияния текстовых файлов

У меня есть несколько текстовых файлов с частично пересекающимся содержимым. Я хочу объединить их таким образом, чтобы все содержимое было в одном файле, но было как можно меньше дубликатов. Этот инструмент не должен обрабатывать все файлы одновременно, я буду доволен обработкой пар файлов по одному.

Основная проблема заключается в том, что когда я использую такие инструменты, как Compare++ или SmartSynchronize и kdiff3, они пытаются перезаписать некоторые блоки в одном файле блоками из другого, а в других случаях просто добавляют блоки по мере необходимости. В большинстве случаев они даже правильно находят место, куда нужно вставить текст.

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

Я не хочу заменять одну строку на другую, когда они совершенно разные, я хочу иметь обе эти строки в результирующем файле!

Безусловно, инструмент должен быть максимально «умным» в определении мест для вставки. Поскольку строки текста могут располагаться произвольно, в следующем случае

A B

B C

C A

инструмент не должен трактовать Aс правой панели как diff и должен четко понимать, что это то же самое, Aчто и с левой панели.

Платформа — Windows.

Есть ли хороший инструмент для поиска (почти) повторяющихся блоков внутри одного файла? Например, иметь некоторую предустановку «нечеткости», позволяющую блокам различаться на N символов.

KDiff3 имеет возможность вставлять текст из a, а затем из b при каждом различии, но проблема будет заключаться в том, что когда он обнаружит, что два абзаца отличаются только в одной строке, он предложит разницу/объединение на уровне строки, а не абзаца. Возможно, вы могли бы обойти это, используя входные фильтры для удаления перевода строки в абзацах, а затем повторно перенося их позже.
@SteveBarnes да, он также странным образом «перетасовывает» строки (мне кажется). и это не может решить проблему с перестановкой блоков текста в файлах (мой пример с AB BC CA). похоже, мне придется потратить 3-4 часа и сделать все полу-вручную. осталось разработать методологию. также, пожалуйста, смотрите мойedit
возможно WinMerge может быть вам интересен...

Ответы (1)

Это двухэтапный процесс. Сначала объедините все текстовые файлы в один. Загрузите файл в такой инструмент, как http://text-analyser.com для обработки естественного языка (NLP). Инструмент разберет все предложения в строки. В инструменте анализа текста нажмите кнопку « Экспорт ». Это создает файл Excel. Затем удалите другие столбцы в файле Excel, чтобы изолировать столбец предложений, а затем сохраните его как файл с разделением .TAB. Загрузите этот файл на http://text-analyser.com и нажмите кнопку « Удалить дубликаты» . Во время импорта инструмент удалит все повторяющиеся предложения. На вкладке «Файл» щелкните имя файла в таблице HTML... этот загруженный файл являетсяочистить/дублировать бесплатный файл предложений ! Надеюсь, это поможет кому-то найти решение этой проблемы.