Перейти к содержимому
PulsarKit

Сравнить два текста

Две колонки, удаления красным, добавления зеленым. Измененные слова подсвечены внутри каждой строки.

Перетащите файлы сюда

.txt, .md, .csv, .json · до 5 МБ

Как сравнить

  1. 1

    Разместите текст с каждой стороны

    Вставьте их или перетащите сразу два файла.

  2. 2

    Выберите уровень детализации

    Целиком строки, отдельные слова или символы.

  3. 3

    Посмотрите различия

    Или скачайте единый .diff патч с изменениями.

Игнорирование влияет на совпадения, а не на текст

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

Три уровня детализации под разные задачи

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

Удаление и вставка подряд считаются одним изменением

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

Процент совпадения и с чем он сравнивается

Процент — это количество неизменных строк, деленное на длину более длинной стороны. Знаменатель важен: если документ на сто строк вырастает до двухсот, половина результата — новый текст. Если делить на исходные сто, получится сто процентов совпадения, хотя перед вами уже другой документ. Скачивание результата дает единый патч — стандартный формат --- +++ @@, который понимают git apply и любые инструменты ревью кода. Можно задать, сколько неизменного контекста оставлять вокруг каждого изменения.

Оба текста остаются на вашем устройстве

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

Частые вопросы

Можно сравнить два файла вместо вставки текста?

Да. Перетащите оба файла сразу — они заполнят левую и правую стороны по порядку. Поддерживаются текст, Markdown, CSV и JSON, до 5 МБ каждый.

Что означает процент совпадения?

Это доля неизменных строк относительно более длинного из двух текстов. Если считать от более короткого, получится 100 %, когда в документ только добавили текст.

Почему некоторые строки помечены как измененные, а не как добавленные и удаленные?

Потому что так и есть: удаление, за которым сразу идет вставка, — это одна правка. В одной строке старая и новая версии видны рядом.

Зачем нужен файл .diff?

Это стандартный формат единого патча. Инструменты ревью кода его читают, а git apply может воспроизвести изменения в файле. Объем неизменного контекста вокруг каждой правки можно настроить.

Меняет ли игнорирование пробелов мой текст?

Нет. Меняется только то, как строки сопоставляются друг с другом. Текст, который вы видите и копируете, всегда в точности тот, который вы вставили.

Насколько большим может быть каждый текст?

До 5 МБ или 500 000 символов на сторону. Большие документы лучше сначала разделить.

Отправляется ли что-нибудь на сервер?

Нет. Оба текста сравниваются прямо в браузере и никогда его не покидают.

Похожие инструменты

Найти и заменитьЗаменяйте слова, фразы или совпадения по регулярным выражениям — до двадцати правил за один проход, с поиском целых слов для любого алфавита.Счетчик словСимволы, слова, предложения, абзацы и время чтения обновляются прямо во время набора — с лимитами для поста, SMS и метаописания перед глазами.Удалить дубликатыУдалите дубли из списка ключевых слов или любого другого списка, не меняя порядок строк, — или оставьте только те строки, что повторяются.Сортировка строкПо алфавиту, как числа, по длине или вразбивку — с ё, ä и ñ на своих местах, а не в самом конце.Сравнить PDFПоставьте две версии документа рядом: будет видно каждое слово, которое добавили, убрали или перенесли. Или наложите страницы друг на друга, и отличия подсветятся.Редактор MarkdownMarkdown слева, готовая страница справа, предпросмотр обновляется по мере ввода. Черновик сохраняется при перезагрузке, экспорт в HTML работает офлайн.