📝
免費HTML 轉 Markdown 轉換器
將 HTML 轉為乾淨的 Markdown。處理標題、列表、連結、圖片、程式碼區塊、表格和引用塊。非常適合從 CMS 匯出內容。
載入後可離線使用
在左側貼上 HTML,右側將顯示整潔的 Markdown。Markdown 比 HTML 更簡單,樣式、指令碼和複雜表格將被簡化或省略。
提示:貼上從網頁、Word 或 Google Docs 複製的富文字 - 其 HTML 會自動捕獲。
Markdown 輸出
Markdown 輸出將顯示在此處…工作原理
此轉換器圍繞手寫的零依賴正則流水線建立——不匯入任何第三方庫。整個轉換透過 React useMemo 呼叫在你的瀏覽器中執行,輸入時即時更新輸出。
- 1貼上檢測截獲富文字ClipboardEvent 處理常式會在瀏覽器貼上純文字之前從剪貼簿讀取 text/html 格式。這意味著直接從網頁、Google Docs 或 Word 貼上時會自動取得原始 HTML 標記——無需先檢視原始碼。
- 2多輪正則流水線去除並轉換標籤轉換器按嚴格順序執行多輪正則:先移除 <head>、<script>、<style> 和 HTML 註解,然後將圍欄程式碼區塊暫存到空位元組佔位符後面,防止後續處理破壞程式碼內容。之後的各輪分別處理標題(h1–h6)、引用塊、圖片、連結、粗體/斜體/刪除線、有序和無序列表以及基本的 GFM 管道表格——每一輪針對一類特定標籤。
- 3實體解碼與空白規範化所有標籤去除後,專門的 decodeEntities 函式使用 String.fromCodePoint 解析命名實體(&、< 等)以及十進位制和十六進位制數字字元引用('、')。格式錯誤或超出範圍的碼點會被替換為 Unicode 替換字元,而不是丟擲錯誤。然後規範化行尾空格、連續空行和多餘空白。
- 4恢復受保護的程式碼片段佔位符系統(以空位元組分隔的索引)在去除標籤、解碼和摺疊空白完成之後最後展開。這可以防止程式碼字面量中的實體序列被解碼兩次——這是簡單的 HTML 轉 Markdown 轉換器中常見的雙重解碼錯誤。