Անցնել հիմնական բովանդակությանը

Տեքստի Diff անվճար

Համեմատեք տեքստի երկու բլոկ ու տեսեք ճշգրտապես, թե ինչ է փոփոխվել: Տող-տող diff-ը ավելացված, հեռացված ու անփոփոխ տողերով:

Աշխատում է անցանց՝ բեռնվելուց հետո
Համատեքստ:
+3 ավելածված−2 հերածված2 անփոխոխ
Տարբերություն
+The quick brown fox leaps over the lazy dog.
−The quick brown fox jumps over the lazy dog.
Pack my box with five dozen liquor jugs.
+How amazingly quick daft zebras jump!
−How vexingly quick daft zebras jump!
The five boxing wizards jump quickly.
+Now is the time for all good men.

Տարածված կիրառություններ

  • Համեմատել Կոդ ՉափՏեղ այս տեղ փոխել երկու տարբերակ կոդ կտրատել, կազմաձեւ, կամ սկրիպտ:
  • Համեմատել Փաստաթուղթ ՍխեմաՄեջ այս փոխել երկու սխեմա փաստաթուղթ, պայմանագիր, կամ հոդված — շարակցություն շարակցություն:
  • Համեմատել Տվյալ և CSV ՖայլՏեղ այս փոխել երկու տարբերակ արտահանել տվյալ, CSV, գրառում, կամ կազմաձեւ:
  • Համեմատեք թարգմանության տարբերակներըՏեսեք, թե ինչ փոխվել երկու տարբերակ թարգմանել փաստաթուղթ, subtitle ֆայլ կամ տեղայնացում տող:
  • Հետճ փոփոխությունները բովանդակության վերանայման մեջՀամեմատեք բնօրինակ և խմբագրել տարբերակ հոդված, բլոգ պոստ կամ շուկա պատճեն փոփոխություններ ստուգել:

Ինչպես է այն աշխատում

Text Diff-ն օգտագործում է ձեռագիր Ամենաերկար Ընդհանուր Ենթահաջորդականության (LCS) ալգորիթմ, կիրառված ուղղակիորեն այս գործիքում — ոչ մի արտաքին diff գրադարան։ Ամեն ինչ աշխատում է դիտարկիչում. ձեր տեքստը երբեք չի ուղարկվում սերվեր։

  1. 1
    Տեքստը բաժանվում է տողերի
    Ամեն տեքստային դաշտի բովանդակությունը բաժանվում է նոր-տողի նիշերով տողերի զանգվածի մեջ։ Ընտրովի նորմալացում (փոքրատառացում, բացատների սեղմում) կիրառվում է այդ զանգվածների պատճենի վրա մինչև համեմատումը, մինչդեռ սկզբնականները պահվում են ցուցադրման համար։
  2. 2
    LCS աղյուսակը հաշվարկված Uint32Array-ում
    Ներքևից-վերև դինամիկ-ծրագրավորման աղյուսակը կառուցված է տիպավորված Uint32Array-ում — O(m×n) ինչպես ժամանակով, այնպես էլ հիշողությամբ։ Մուտքագրումների համար, որոնց համակցված վանդակների թիվը կգերազանցի 4 միլիոնը (մոտավորապես 16 ՄԲ), ալգորիթմն ինքնաբերաբար վերադառնում է ավելի կոպիտ բլոկային diff-ի, որպեսզի էջը մնա արձագանքող։
  3. 3
    Բառա-մակարդակի ընդգծումներ փոփոխված տողերում
    Երբ հեռացված տողին անմիջապես հաջորդում է ներդրված տող, երկրորդ LCS անցումն աշխատում է այդ զույգի նշանագրված բառերի վրա (բացատով բաժանված)։ Սա արտադրում է ներգծված ընդգծված հատվածներ՝ ցույց տալով, թե ուղիղ որ բառերն են փոխվել տողի ներսում, ոչ միայն, թե որ տողերն են փոխվել։
  4. 4
    Միասնական-diff տեսք համատեքստի փլուզումով
    Գործողությունների ցանկը մատուցվում է որպես միասնական diff՝ +/− նախածանցներով և գունային կոդավորումով։ Չփոփոխված տողերը, որոնք դուրս են կազմաձևելի համատեքստի պատուհանից (կանխադրված՝ 3 տող), փլուզվում են բազմակետի հետևում։ Ամբողջ արդյունքը կարող է պատճենվել սեղմատախտակին կամ ներբեռնվել որպես պարզ-տեքստային .txt ֆայլ։

Առնչվող գործիքներ

Հաճախակի տրվող հարցեր