Различаются текстовые документы, но игнорируются различия в одном символе?Установить фильтр минимального расстояния редактирования? - PullRequest
0 голосов
/ 19 января 2019

У меня есть две версии большой книги в формате txt, и я хотел бы сравнить их, чтобы найти значительные различия между версиями, игнорируя небольшие различия в одном символе.

Существует множество инструментов сравнения, которые могут игнорировать различия между пробелами, но я также хочу игнорировать небольшие опечатки и различия в одном или нескольких символах. Например, одна версия книги имеет повторную орфографическую ошибку leige сотни раз, и это исправлено в следующей версии до liege. Некоторые собственные имена также изменили свое написание. (Я мог бы сделать индивидуальные обходные пути для каждой ошибки, но хотел бы что-то более общего назначения)

Поскольку меня интересуют только более значительные различия в нескольких словах, я действительно хочу установить фильтр, который игнорирует изменения для строки, если расстояние редактирования Левенштейна не превышает некоторый порог.

Просматривая все инструменты сравнения / сравнения, которые я нахожу, похоже, имеешь в виду код, поэтому им не хватает какой-либо возможности игнорировать небольшие изменения текста. Библиотека diff_match_patch от Google отлично подходит для разметки открытого текста и игнорирования изменений пробелов ( демонстрация здесь ), но, похоже, не имеет готового способа игнорировать односимвольные различия без пробелов.

ТЛ; др; Существуют ли какие-либо инструменты сравнения, которые могут сравнивать текстовые документы, но отфильтровывать незначительные различия между символами и пробелами?

1 Ответ

0 голосов
/ 20 января 2019

В Beyond Compare вы можете определить «замены».

Пример: различия отмечены красным: Differences are marked red

Затем вы можете перейти к Session->Настройки сеанса и установите замену: Define a replacement

Или еще проще: отметьте текст и определите немедленную замену: enter image description here enter image description here

Теперь разница не важна и отмечена синим цветом: enter image description here

Одним щелчком мыши вы можете игнорировать неважные различия (красная стрелка на скриншоте).

Техническое замечание: я использую BC4 с профессиональной версией.

...