Bepul HTML dan Markdown ga Konvertor

HTML ni toza Markdown ga aylantiring. Sarlavhalar, ro'yxatlar, havolalar, rasmlar, kod bloklari va iqtiboslarni qayta ishlaydi. CMS lardan kontentni ko'chirish uchun mukammal.

Yuklangandan keyin oflayn ishlaydi

HTML'ni chapga joylashtiring; toza Markdown o‘ngda paydo bo‘ladi. Markdown HTML'dan sodda, shuning uchun stillar, skriptlar va murakkab jadvallar soddalashtiriladi yoki olib tashlanadi.

Maslahat: veb-sahifa, Word yoki Google Docs-dan nusxalangan boy matnni joylashtiring — uning HTML-i avtomatik ravishda olinadi.

Markdown natijasi
Markdown natijasi shu yerda paydo bo‘ladi…

Qanday ishlaydi

Bu konvertor qo'lda yozilgan, nol-bog'liqlikdagi regex quvuri atrofida qurilgan — hech qanday uchinchi tomon kutubxonasi import qilinmagan. Butun o'girish brauzeringizda React useMemo chaqiruvi orqali ishlaydi, siz yozayotganda chiqishni jonli yangilaydi.

  1. 1
    Joylashtirish aniqlash boy matnni ushlaydi
    ClipboardEvent boshqaruvchisi brauzer oddiy matnni joylashtirishdan oldin buferdan text/html turini o'qiydi. Bu veb sahifadan, Google Docs'dan yoki Word'dan to'g'ridan-to'g'ri joylashtirish avtomatik ravishda xom HTML belgilashni qo'lga olishini anglatadi — avval manbani ko'rishga hojat yo'q.
  2. 2
    Ko'p-o'tishli regex quvuri teglarni tozalaydi va o'giradi
    Konvertor regex o'tishlarining qat'iy tartibini bajaradi: avval <head>, <script>, <style> va HTML izohlarini olib tashlaydi, so'ng keyingi o'tishlarning kod tarkibini buzmasligi uchun kesilgan kod bloklarini nol-bayt joy egallovchilar ortiga yashiradi. Keyingi o'tishlar sarlavhalarni (h1–h6), iqtiboslarni, rasmlarni, havolalarni, qalin/kursiv/chizilgan matnni, tartiblangan va tartibsiz ro'yxatlarni va oddiy GFM chiziq jadvallarini boshqaradi — har bir o'tish muayyan teg oilasiga qaratilgan.
  3. 3
    Obyekt dekodlash va bo'shliq normalizatsiyasi
    Barcha teglar tozalanganidan so'ng, maxsus decodeEntities funksiyasi String.fromCodePoint yordamida nomlangan obyektlarni (&amp;, &lt; va h.k.) va raqamli o'nlik hamda o'n oltilik belgi havolalarini (&#39;, &#x27;) hal qiladi. Noto'g'ri shakllangan yoki diapazondan tashqari kod nuqtalari xato bermay Unicode almashtiruvchi belgisi bilan almashtiriladi. So'ng oxirgi bo'shliqlar, siqilgan bo'sh qator qatorlari va ortiqcha bo'shliq normalizatsiya qilinadi.
  4. 4
    Himoyalangan kod bo'laklari tiklanadi
    Joy egallovchi tizimi (nol-bayt-ajratilgan indekslar) tozalash, dekodlash va bo'shliq siqish tugagandan so'ng oxirida ochiladi. Bu kod literallari ichidagi obyekt ketma-ketliklarining ikki marta dekodlanishining oldini oladi — sodda HTML-dan-Markdown konvertorlarida keng tarqalgan ikki marta dekodlash xatosi.

Tegishli asboblar

Ko'p so'raladigan savollar