Главная Блог Как сравнить два текста и быстро найти отличия

Как сравнить два текста и быстро найти отличия

По теме статьи: Сравнение текстаОткрыть конвертер →

Сравнить две версии документа, конфигурационного файла или фрагмента кода вручную — долго и ненадёжно: мелкую правку в длинном тексте легко пропустить, особенно если менялось несколько строк в разных местах.

Как работает сравнение

Инструмент сравнения текста находит отличия между двумя версиями построчно. Вставьте оригинал в одно поле и изменённый текст — в другое: сравнение подсветит добавленные строки зелёным, а удалённые — красным, а счётчик покажет, сколько строк прибавилось и сколько убавилось.

Сравнение построчное — то есть каждая строка целиком считается либо добавленной, либо удалённой, либо неизменной. Алгоритм в основе — классический LCS (longest common subsequence, наибольшая общая подпоследовательность), тот же принцип, что используют системы контроля версий вроде Git при показе diff.

Для чего это нужно

  • Проверить правки в документе или договоре — быстро увидеть, что именно изменилось между двумя версиями текста, без построчного сравнения глазами.
  • Сравнить две версии конфигурации или кода — найти конкретные строки, которые отличаются, до того как разбираться, почему поведение системы изменилось.
  • Найти разницу между копиями файла — например, если один и тот же файл редактировали в двух местах и нужно понять, какая версия актуальнее.
  • Проверить результат автоматической обработки текста — сравнить текст до и после скрипта или найти-и-заменить, чтобы убедиться, что изменилось именно то, что нужно.

Ограничения

Сравнение построчное, а не посимвольное: если в длинной строке изменилось одно слово, вся строка будет показана как удалённая и добавленная заново, а не как частичное изменение внутри строки. Для очень больших текстов — десятки тысяч строк — сравнение может выполняться чуть медленнее, но это нормальное поведение для расчёта в браузере, а не ошибка.

Итог

Построчное сравнение текста избавляет от необходимости искать отличия вручную — достаточно вставить обе версии, и различия подсвечиваются сразу, с счётчиком добавленных и удалённых строк.

← Все статьи