Bepul Matn Farqi

Ikkita matn blokini solishtiring va nima o'zgarganini aniq ko'ring. Qo'shilgan, olib tashlangan va o'zgarmagan qatorlar bilan qatorma-qator farq.

Yuklangandan keyin oflayn ishlaydi
Kontekst:
+3 qo'shildi−2 olib tashlandi2 o‘zgarmagan
Farq
+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.

Qanday ishlaydi

Matn Farqi ushbu asbobga to'g'ridan-to'g'ri amalga oshirilgan qo'lda yozilgan Eng Uzun Umumiy Ketma-ketlik (LCS) algoritmidan foydalanadi — tashqi diff kutubxonasi yo'q. Hammasi brauzerda ishlaydi; matningiz hech qachon serverga yuborilmaydi.

  1. 1
    Matn qatorlarga bo'linadi
    Har bir textarea tarkibi yangi qator belgilari bo'yicha qatorlar massiviga bo'linadi. Solishtirishdan oldin shu massivlarning nusxasiga ixtiyoriy normalizatsiya (kichik harfga o'girish, bo'shliqni siqish) qo'llaniladi, asllari esa ko'rsatish uchun saqlanadi.
  2. 2
    LCS jadvali Uint32Array'da hisoblanadi
    Pastdan-yuqoriga dinamik-dasturlash jadvali turlangan Uint32Array'da quriladi — vaqt va xotirada O(m×n). Birlashtirilgan katak soni 4 milliondan (taxminan 16 MB) oshadigan kiritishlar uchun, algoritm sahifa javob berishda davom etishi uchun avtomatik ravishda qo'polroq blok diff'iga qaytadi.
  3. 3
    O'zgargan qatorlarda so'z-darajali yoritish
    O'chirilgan qatordan darhol keyin qo'shilgan qator kelganda, ikkinchi LCS o'tishi shu jufliknning tokenlangan so'zlarida (bo'shliq bo'yicha bo'linagan) ishlaydi. Bu faqat qaysi qatorlar o'zgarganini emas, qator ichida aynan qaysi so'zlar o'zgarganini ko'rsatuvchi inline yoritilgan segmentlarni ishlab chiqaradi.
  4. 4
    Kontekst siqish bilan birlashtirilgan-diff ko'rinishi
    Amallar ro'yxati +/− prefikslar va rang kodlash bilan birlashtirilgan diff sifatida ko'rsatiladi. Sozlanadigan kontekst oynasi (standart: 3 qator) tashqarisidagi o'zgarmagan qatorlar ellips ortiga siqiladi. To'liq natijani buferga nusxalash yoki oddiy-matn .txt fayli sifatida yuklab olish mumkin.

Tegishli asboblar

Ko'p so'raladigan savollar