CodeKitHub
Textové nástroje

Porovnanie textu — Porovnajte dva texty online

Naposledy aktualizované:

Ak chcete porovnať dva texty, vložte každú verziu do polí nižšie a nástroj zvýrazní každý pridaný riadok zelenou a každý odstránený riadok červenou, nezmenené riadky sa zobrazia ako kontext — rovnaký prístup diff, aký používajú git a nástroje na kontrolu kódu. Všetko zostáva vo vašom prehliadači.

Čo je tento nástroj?

Nástroj na porovnanie (diff) porovná dva texty a zobrazí minimálnu sadu zmien, ktoré premenia jeden na druhý. Takto verzovacie systémy ako Git zobrazujú zmeny v kóde, a rovnako je to užitočné pri porovnávaní konfiguračných súborov, zmlúv, článkov alebo akýchkoľvek dvoch verzií čohokoľvek.

Tento nástroj porovnáva riadok po riadku pomocou rovnakej rodiny algoritmov (najdlhšia spoločná podsekvencia) ako klasické nástroje diff, takže výstup pôsobí ako známa kontrola kódu: + pre pridané riadky, − pre odstránené riadky.

Prečo ho používať?

  • Uvidíte, čo sa skutočne zmenilo medzi dvomi verziami, namiesto vizuálneho porovnávania.
  • Známy výstup v štýle git: zelené pridania, červené odstránenia, kontextové riadky medzi nimi.
  • Súhrnný počet pridaných a odstránených riadkov na prvý pohľad.
  • Funguje s akýmkoľvek textom — kód, konfigurácie, dokumenty, zoznamy.
  • Súkromné: oba texty zostávajú vo vašom prehliadači, nič sa nenahráva.

Ako sa používa

  1. Vložte pôvodný text do ľavého poľa.
  2. Vložte zmenenú verziu do pravého poľa.
  3. Kliknite na „Porovnať“.
  4. Prečítajte si výsledok: zelené riadky boli pridané, červené riadky boli odstránené, obyčajné riadky sú nezmenené.

Príklad

Vstup

Original:
line one
line two
line three

Changed:
line one
line 2
line three

Výstup

  line one
− line two
+ line 2
  line three

Prostredný riadok bol zmenený, čo diff zobrazuje ako odstránenie starého riadku a pridanie nového.

Bežné prípady použitia

  • Kontrola odseku prepísaného AI: vložte pôvodný a AI verziu, aby ste videli presne, ktoré vety sa zmenili, namiesto opätovného čítania celého textu kvôli hľadaniu úprav.
  • Porovnanie dvoch návrhov zmluvy: právne revízie sa často jednoduchšie prehľadávajú ako riadkový diff než ako sledované zmeny, keď bol dokument medzi verziami preformátovaný.
  • Kontrola konfiguračného súboru po nasadení: vložte stav pred/po súboru .env alebo YAML na potvrdenie, že sa zmenili iba zamýšľané riadky.
  • Porovnanie revízií preloženého textu: uvidíte, ktoré riadky prekladateľ alebo editor skutočne upravil medzi verziami.

Obmedzenia, ktoré treba poznať

Toto je porovnanie na úrovni riadkov, nie na úrovni slov — ak presuniete odsek z hornej časti dokumentu na spodok bez zmeny textu, zobrazí sa to ako úplné odstránenie plus úplné pridanie, nie ako anotácia „presunuté“. Pri texte bohatom na odseky, kde sa mení iba pár slov na vetu, by nástroj na porovnanie na úrovni slov zvýraznil menej textu, ale porovnanie na úrovni riadkov je štandardom pre kód, konfigurácie a štruktúrované dokumenty, a na to sa tento nástroj zameriava.

Ako funguje algoritmus porovnania

Nástroj nájde najdlhšiu spoločnú podsekvenciu (LCS) medzi dvomi textami — najväčšiu sadu riadkov, ktoré sa vyskytujú v rovnakom relatívnom poradí v oboch verziách, aj keď medzi nimi boli vložené alebo odstránené iné riadky. Všetko v tejto spoločnej podsekvencii sa zobrazí ako nezmenený kontext; všetko ostatné je klasifikované buď ako odstránené (prítomné iba v origináli) alebo pridané (prítomné iba v novej verzii). Toto je ten istý základný algoritmus, ktorý stojí za nástrojom Unix diff a riadkovým porovnaním Gitu, preto bude formát výstupu okamžite známy, ak ste niekedy kontrolovali pull request.

Jeden praktický dôsledok: ak je riadok duplikovaný inde v dokumente (rovnaký text sa objaví dvakrát), algoritmus ho priradí k tomu výskytu, ktorý udrží celkový diff najmenší — občas to prinesie mierne odlišné párovanie, než by ste intuitívne očakávali, hoci finálny počet pridaných/odstránených riadkov je vždy presný bez ohľadu na to, ktorý duplikát bol s ktorým spárovaný.

Časté otázky

Porovnáva to slovo po slove alebo riadok po riadku?

Riadok po riadku, ako git diff. Zmenený riadok sa zobrazí ako jedno odstránenie plus jedno pridanie. Porovnanie na úrovni riadkov je štandardom pre kód a konfigurácie a zostáva čitateľné pri veľkých textoch.

Prečo malá zmena zobrazí celý riadok ako zmenený?

Pretože jednotkou porovnania je riadok — akákoľvek zmena v ňom označí celý riadok. Rozdeľte dlhé odseky na kratšie riadky, ak potrebujete jemnejšiu granularitu.

Záleží na medzerách?

Áno. Riadky sa musia zhodovať presne, takže koncová medzera alebo odlišné odsadenie spôsobí, že sa riadky budú počítať ako odlišné. Toto je zámerné — rozdiely v medzerách sú skutočnými rozdielmi v kóde a konfiguráciách.

Existuje limit veľkosti?

Žiadny pevný limit, ale veľmi veľké texty (desiatky tisíc riadkov) môžu chvíľu trvať, keďže porovnanie beží lokálne na vašom zariadení.

Nahrávajú sa moje texty na porovnanie?

Nie. Algoritmus porovnania beží výhradne vo vašom prehliadači v JavaScripte. Oba texty zostávajú na vašom zariadení — bezpečné pre zmluvy, interné dokumenty a nevydaný kód.

Súvisiace nástroje