若要移除 Google Docs 內容的文字格式,請將帶有樣式的文字貼到瀏覽器中的原生純文字欄位,點擊以建立純文字,然後將結果複製或下載為 UTF-8 文字——來源應用程式原本提供的每個字元、Tab、空格和換行都會完整保留,唯一刻意進行的變更則是把 CRLF 和單獨的 CR 行尾統一為 LF。Google Docs 提供了文件內的清除指令,但當來源是外部文件時,它可能會遺留下粗體、斜體、連結、標題與表格結構,而且它完全無法處理你已經複製出來、要貼到別處的內容。基於瀏覽器的純文字欄位則從不同的層級解決問題:它並不是要求文件編輯器還原樣式,而是讓瀏覽器在貼上時只交出剪貼簿中的 text/plain 部份,並在貼上的邊界丟棄所有富文本屬性。最終得到的會是一段具確定性的純文字字串,你可以安心地放進原始碼註解、CMS 欄位、客服單、表格,或任何需要未格式化文字、且不想解析 HTML 的系統。

how to remove text formatting in google docs
how to remove text formatting in google docs

為什麼 Google Docs 的清除功能會留下隱藏的格式

Google Docs 提供「格式 > 清除格式」選單,這在你想重新設定文件內某段內容的樣式時是個實用的第一站。該選單指令會重設所選範圍的字元格式,並對同一份文件中既有的內容生效。然而,當問題在於你已經複製出來、想貼到別處而不帶樣式的文字時,它就幫不上忙了。一旦帶有樣式的區塊離開 Google Docs 並進入剪貼簿,它就會帶著兩種表示方式:一段 text/plain 字串,以及一段 HTML 字串,其中包含來源所提供的每個粗體標籤、連結目標、字型宣告、列表項目符號和表格儲存格。

在 Google Docs 內清除格式,也不一定能一致地處理標題層級、連結、色彩代碼或表格結構。當你從網站、PDF 或其他文書處理器複製內容時,帶回 Google Docs 的文字可能會保留文件編輯器直接忽略、而非移除的 HTML 層級屬性。在 Docs 中再清除一次也無法還原這一點。結果就是,粗體和斜體可能在工具列檢視中消失,但底層的 HTML 仍會在下一次複製時一起被帶走。

當目標是取得一份適用於程式碼註解、CMS 輸入框、客服單、表格、提示詞,或其他拒絕富文本之系統的單一未格式化副本時,就需要不同的做法。解決方案是在瀏覽器層級攔截帶有樣式的貼上動作,使用原生純文字欄位,只接收剪貼簿中的 text/plain 表示法,並在貼上邊界丟棄所有富文本屬性。Remove Text Formatting 工具正是為這項任務而設計。

純文字欄位如何去除樣式

原生 HTML textarea 是一般的表單控制項。當你貼上內容時,瀏覽器只會提供剪貼簿的 text/plain 表示法,而不會插入富 DOM 節點。正是這個單一事實讓轉換過程安全:沒有可接受任意 HTML 的 contenteditable 區域、不執行任何腳本或事件處理器,也不會解析任何連結、影像或版面節點。根據 textarea 元素的 MDN 參考資料,該欄位接受文字類型的剪貼簿內容,並丟棄富文本的字型、色彩、標題、連結與內嵌的版面節點。

由於來源應用程式與瀏覽器決定了 text/plain 表示法的內容,textarea 會完整顯示所提供的內容。文書處理器呈現表格和列表的方式可能與網頁不同。有些應用程式會為粗體輸出類似 Markdown 的星號,有些則完全不輸出。結果面板中的預覽就是工具實際接收到內容的真實樣貌,而它唯一進行的轉換是行尾正規化:CRLF 和單獨的 CR 序列會被轉為 LF。

正規化之後,工具會透過標準 Clipboard API 將精確的預覽字串寫入剪貼簿,或將它包進一個 MIME 類型為 text/plain;charset=utf-8 的 Blob 中以便下載。兩種輸出管道會收到同一段具確定性的字串,因此複製與下載的結果不會彼此不同步。

三步驟移除 Google Docs 格式

  1. 在瀏覽器中開啟 Remove Text Formatting 工具,並點進輸入欄位的 textarea。從 Google Docs 以 Ctrl+C(或在 macOS 上用 Cmd+C)複製帶有樣式的內容,然後以 Ctrl+V(或 Cmd+V)直接貼到 textarea。由於瀏覽器只提供剪貼簿的 text/plain 表示法,每一種字型、色彩、連結和標題都會在貼上邊界被丟棄。
  2. 點擊 Create plain text。工具會驗證目前 textarea 中的內容,拒絕空白或格式錯誤的 Unicode 輸入,並檢查輸入內容是否在一百萬個程式碼點的上限之內。同時也會在點擊時將 CRLF 或單獨的 CR 行尾正規化為 LF,同時保留 Tab、重複空格、空行、標點符號、表情符號、帶有變音符號的字母,以及任何像 <b> 這樣的字面標籤字元。
  3. 逐字檢查結果面板。確認列表項目符號、表格分隔線與換行符號符合你對 Google Docs 來源的預期。當預覽看起來正確時,點擊 Copy plain text,透過 Clipboard.writeText API 將精確正規化後的字串寫入剪貼簿,或點擊 Download TXT,將它存為 MIME 類型為 text/plain;charset=utf-8、名稱為 plain-text.txt 的 Blob。下載下來的位元組與你在預覽中看到的內容完全一致。

工具保留與變更了什麼

這套工具刻意只做範圍極小的事。它不會修剪開頭或結尾、不會合併重複空格、不會重新排版段落,也不會改寫引號。不會套用 Markdown、不會套用 Unicode 正規化、不會替換為智慧標點,也不會進行編碼偵測。唯一刻意的轉換,是將 CRLF 或單獨的 CR 替換為 LF,這讓預覽與下載的 TXT 檔案無論剪貼簿來自 Windows、經典 macOS 或 Unix 類系統,都能有一致的結果。

字面意義的 HTML 來源會保持字面意義。若複製的區塊中含有字元 <b>literal</b>,結果就會包含這些完全相同的標籤字元,而不會把它們解讀為粗體文字,也不會當作 markup 加以剝除。這個區分很重要:此頁面並不是 HTML 清理器、解析器、DOM 文字萃取器,也不是資安過濾器。它是一個純文字欄位,保留所有接收到的程式碼點,唯一例外是行尾序列。

輸入上限為一百萬個 Unicode 程式碼點。驗證會拒絕空白輸入、格式錯誤的 UTF-16、孤立的代理碼位,以及超出上限的內容,且不會截斷內容或回傳部分結果。一般的輸入與貼上操作通常會產生格式正確的字串,但這個檢查能讓 Blob、預覽和剪貼簿的契約保持一致。

比較應用程式內清除與瀏覽器純文字欄位

能力 Google Docs 清除格式 Remove Text Formatting 工具
作用於文件內既有的內容
去除剪貼簿貼上內容的樣式 部份;HTML 可能會殘留 是;textarea 僅接受 text/plain
解讀或去除 HTML 標籤 否;忽略 HTML 否;保留字面的標籤字元
將 CRLF 或 CR 正規化為 LF
拒絕格式錯誤的 Unicode
拒絕超出上限的輸入 是(一百萬個程式碼點)
將內容傳送到遠端伺服器 不適用
以 UTF-8 TXT 形式提供輸出 是(下載)或剪貼簿

這兩種做法解決的是不同問題。當你想為同一份文件中的選取範圍重新設定樣式時,清除格式是正確的選擇。當你需要一份已經從文件中取出、且不帶樣式的乾淨副本時,純文字欄位才是正確的選擇。

可以將結果貼到哪裡

乾淨的純文字字串適合任何不想要富樣式的地方。原始碼註解、JSON 設定值與 shell 指令都會拒絕粗體和內嵌色彩。CMS 欄位輸入、聯絡表單、搜尋框和提示詞欄位同樣預期接收純文字。客服單系統、記錄檔和 CSV 儲存格也偏好未格式化的字串。

當周圍段落必須包含精確字元(例如程式碼範例、regex 樣式或跳脫序列)時,請保留字面輸出。Remove Text Formatting 工具會完整保留角括號、& 符號和引號在預覽中的原貌,因此 HTML 範例與 shell 指令管線可以原封不動地貼上。對於較長的文件,若你想另外檢查行尾,如何移除 Word 文件中的換行一文,會逐步說明在清理多段貼上內容時同樣該有的行尾意識。測試也涵蓋了行尾、精確的字面 HTML 保留、空白、多語言 Unicode、格式錯誤的輸入,以及一百萬個程式碼點上限的兩側,因此你所看到的預覽,就是你將會複製或下載的位元組序列。

若想進一步了解,請參閱如何移除 Google Docs 中的空行(8 個步驟)