vasilenko.info

Сравнение двух текстов

/tool/text-diff/ работает сравнивает браузер

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

промоДвадцать лет заметок про сайтыКак это делали в 2008-м и что из этого работает сейчас.Открыть

Сверка двух текстов

Что считать единицей сравнения

По строкам — обычная сверка версий текста. По словам и по знакам — когда абзац переписан и построчный разбор превращается в сплошную замену. По структуре — для JSON, XML и YAML: ключи приводятся к одному порядку, и переформатирование само по себе перестаёт быть различием.

Что не считать различием
Как показывать

Файл можно перетащить прямо в поле.

Читаются txt, md, csv, json, xml, html, docx, odt и pdf.

Сравнение пересчитывается во время набора. Правка одного слова показывается одной изменённой строкой с подсветкой самого слова, а не парой «минус — плюс».

«Ссылка на результат» зашивает оба текста в саму ссылку, после решётки. Такой хвост адреса браузер на сервер не отправляет, поэтому тексты остаются между вами и тем, кому вы ссылку дали. Убрать их из адреса можно той же кнопкой.

Сходство

%

Пусто

различий нет

Клавиши n и p листают блоки различий, когда курсор не в поле ввода. Полоска справа от листинга — карта правок: по метке можно щёлкнуть и попасть в нужное место.

разница построчно

    Строк слева
    Строк справа
    Совпало строк
    Изменено строк
    Пропало строк
    Добавилось строк
    Перемещено строк
    Блоков различий

    Всё считается на вашем устройстве. Тексты, файлы и ссылка на результат никуда не отправляются: после загрузки страница не делает ни одного запроса. Docx, odt и pdf тоже разбираются здесь же, в браузере.

    промоПосчитайте заодно ROIОкупаемость кампании по расходу и доходу.Открыть

    Как пользоваться

    1. Вставьте старую версию слева, новую справа — или перетащите в поля файлы. Читаются txt, md, csv, json, xml, html, а также docx, odt и pdf: их инструмент распаковывает и вынимает текст сам, в браузере.

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

    3. Переключите вид на «в два столбца рядом», если привычнее сравнивать глазами слева направо: пустые места напротив пропавших и добавившихся строк не дают сторонам разъехаться.

    4. Ходите по правкам кнопками «предыдущее — следующее» или клавишами n и p. Полоска справа от листинга — карта: по метке видно, где правок много, и по ней можно щёлкнуть.

    5. Если различий больше, чем ожидали, снимите строгость: регистр, отступы, пустые строки. Часто расходится не текст, а пробелы в конце строк после копирования из редактора.

    6. Для JSON, XML и YAML включите «Структура»: данные разберутся и приведутся к одному виду, а различия выведутся списком путей вроде «items[3].price: 100 → 120». Если оба поля — заведомо JSON или XML, инструмент переключится сам.

    7. Готовое можно унести: «.patch» — обычный unified diff для patch и git apply, «страница с подсветкой» — самостоятельный html-файл, который откроется без сети, «таблицей» — разметка Markdown для задачи или письма.

    промоСписок задач в браузереБез аккаунта, всё хранится на вашем устройстве.Открыть

    Формула и что в неё входит

    Сходство = (Совпало строк + Перемещено строк + Сумма сходства изменённых пар) × 2 ÷ (Строк слева + Строк справа) × 100 %

    Умножение на два нужно потому, что совпавшая строка засчитывается обоим текстам сразу: она есть и слева, и справа. Без него у двух одинаковых текстов вышло бы 50 %, а не 100 %. В режимах «по словам» и «по знакам» формула та же, только вместо строк в ней слова или знаки.

    Разбор примера: список покупок из четырёх строк

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

    1. Первые две строки совпадают и идут в обоих текстах в одном порядке — это общая подпоследовательность, в ней 2 строки.

    2. «Яйца 10 шт» и «Яйца 20 шт» разбиваются на слова: слева «Яйца», пробел, «10», пробел, «шт», справа то же с «20». Совпало 4 слова из пяти с каждой стороны, сходство пары = 4 × 2 ÷ (5 + 5) = 0,8. Это больше 60 %, поэтому строка считается изменённой, а «10» подсвечивается как единственная правка.

    3. «Масло сливочное 180 г» и «Сыр 200 г» общего почти не имеют: сходство 0,5, порога не хватает. Значит, это не одна изменённая строка, а пропавшая и добавленная.

    4. Все четыре строки идут подряд, совпавших между ними нет, поэтому блок различий один.

    5. Сходство: (2 совпавшие + 0 перемещённых + 0,8 за изменённую пару) × 2 = 5,6, строк всего 4 + 4 = 8.

    Сходство = 5,6 ÷ 8 × 100 % = 70 %. Одна строка изменена, одна пропала, одна добавилась, блок различий один.

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

    промоВесь каталог инструментовСорок четыре штуки, все считают в браузере.Открыть

    Смежные инструменты

    3