Porównywarka Tekstu | Porównaj Pliki i Podkreśl Różnice

Porównuj dwa teksty obok siebie i natychmiast zaznaczaj różnice. Idealne dla kodu.

Porównywarka Tekstu

Zgłoś Problem

Znalazłeś błąd lub masz sugestię dla Porównywarka Tekstu | Porównaj Pliki i Podkreśl Różnice? Daj nam znać!

Tekst Oryginalny
Tekst Zmieniony
Wynik Różnicy
Dodano: 0
Usunięto: 0

Jak działa porównywarka tekstu

Porównywarka tekstu bierze dwa bloki tekstu, wersję oryginalną i zmienioną, i zaznacza dokładnie to, co zostało dodane, usunięte albo pozostało bez zmian między nimi. Obie wersje można wkleić bezpośrednio albo wczytać jako pliki, a narzędzie dopasowuje treść i podświetla każdą różnicę w miejscu, w którym występuje.

Jak działa porównanie

Narzędzie korzysta z algorytmu najdłuższego wspólnego podciągu: znajduje najdłuższy ciąg pasujących fragmentów wspólnych dla obu tekstów, a wszystko poza nim oznacza jako wstawienie albo usunięcie. Porównanie może działać na trzech poziomach szczegółowości: znak po znaku, słowo po słowie albo linia po linii. Tryb linii sprawdza się, gdy trzeba zobaczyć, które całe linie zmieniły się w dokumencie; tryb słów pasuje do przeredagowanego zdania; tryb znaków wychwytuje poprawkę pojedynczej literówki. Wyniki pokazywane są w dwóch kolumnach obok siebie (widok podzielony) albo połączone w jeden ciągły tekst z oznaczeniami w linii (widok scalony). Dodany tekst jest podkreślony na zielono, usunięty przekreślony na czerwono, a nad wynikiem widoczny jest licznik dodanych i usuniętych znaków, który aktualizuje się na bieżąco. Pliki można też wczytać bezpośrednio, w formatach .txt, .json, .js, .ts, .css, .html, .md, .yaml albo .xml, i są one porównywane tak samo jak wklejony tekst.

Przykład: przeredagowane zdanie

Oryginał: "Spotkanie zaczyna się o 10." Zmieniony: "Spotkanie zaczyna się o 10 w sali 9." W trybie słów tylko "w sali 9" zostaje oznaczone jako dodane, ponieważ wszystkie pozostałe słowa w zdaniu się zgadzają. Po przełączeniu tej samej pary na tryb znaków narzędzie zamiast tego oznacza litery i spację w "w sali 9" jako wstawienie na poziomie znaków, bo to tam jest najmniejsza porównywana jednostka.

Przykład: porównanie fragmentu JSON

Wczytanie albo wklejenie dwóch wersji pliku konfiguracyjnego działa tak samo. Plik oryginalny:

{
  "port": 3500,
  "debug": true
}

Plik zmieniony:

{
  "port": 7500,
  "debug": true,
  "timeout": 12
}

W trybie linii linia z portem zostaje oznaczona jako zmieniona, bo 3500 zmieniło się na 7500, linia debug też zostaje oznaczona jako zmieniona, bo teraz kończy się przecinkiem, żeby zrobić miejsce na kolejne pole, a nowa linia "timeout": 12 zostaje oznaczona jako dodana. Tylko otwierający i zamykający nawias klamrowy pozostają bez zmian. Porównanie traktuje oba pliki jako zwykły tekst, a nie sparsowany JSON, więc zamiana miejscami tych samych dwóch kluczy bez zmiany wartości i tak pokazałaby się jako różnica.

Często Zadawane Pytania