換行處理

移除或轉換文字中的換行符號

從 PDF、電子郵件或網頁複製下來的文字,內容常常沒問題,壞掉的是行與行之間:句子被硬生生斷成好幾行、段落之間多出一堆空行、或是換行符號的格式與接手的程式不合。這個工具提供四種針對「行的邊界」的處理,選一種就即時改寫,全部在你的瀏覽器裡完成。

使用步驟

  1. 在上方的四個選項裡挑一個:「移除多餘換行」「移除所有換行」「CRLF → LF」「LF → CRLF」,每一項底下都有一行簡短說明,預設選的是第一項。
  2. 把文字貼進左邊的「輸入」框,右邊的「輸出」框同步顯示結果;換選項時也會立刻重算。
  3. 輸出框是唯讀的,要調整只能改左邊的原文。按右下角的「複製」把結果帶走,按左下角的「清空」倒空輸入框。

什麼時候用得上

把 PDF 或郵件裡被硬斷行的段落接回去

論文、法規條文、退信通知裡的文字,往往每四十幾個字就被塞一個換行符。用「移除所有換行」把整段接成一行,再自己在真正的段落結尾按 Enter 分開。餵給翻譯或摘要工具前也該先做這一步,否則對方會把每一行當成獨立句子。

清掉從 Word、Notion 或網頁貼過來的多餘空行

跨應用程式複製時,原本的段落間距常會被轉成兩三個空行,整篇文章看起來鬆鬆垮垮。「移除多餘換行」把連續的空行壓成一個,段落結構還在,但不會再有半頁的空白。

把檔案交給 Windows 的工具鏈之前補上 CRLF

有些 Windows 上的舊程式、批次檔與試算表匯入功能只認 \r\n,拿到只有 \n 的內容會整份擠成一行。在最後一步跑一次「LF → CRLF」再複製出去,可以省掉對方回報「檔案格式不對」的來回。

限制與注意事項

  • 「移除多餘換行」實際做的是:把連續三個以上的換行符縮成兩個,也就是「兩個以上的連續空行」會被壓成「一個空行」,段落之間的單一空行維持不變。選項底下那句簡短說明講的數字與這個行為不一致,請以這裡描述的為準。
  • 判定時是逐字元比對換行符,所以看起來空、其實含有一個空格或 Tab 的行會打斷連續性,那一段就不會被壓縮。從 Word 貼過來的內容特別容易出現這種「假空行」——若跑完覺得沒效果,多半是這個原因,先用編輯器把行尾空白清掉再回來。
  • 「移除所有換行」不只是刪掉換行:它先把每個換行換成一個空格,再把所有連續空白(含 Tab 與多個空格)壓成單一空格,最後修掉頭尾空白。程式碼的縮排、用空白對齊的表格因此都會被破壞,這個模式只適合處理散文。中文段落接起來時,每個原本的斷行處也會留下一個空格,通常還要再用編輯器取代掉。
  • 瀏覽器的文字框在你貼上的當下就會把 \r\n 正規化成 \n,因此「CRLF → LF」在這個介面裡幾乎永遠沒有可做的事——輸入端本來就已經是 LF 了。真正會改變內容的是反方向的「LF → CRLF」;它產生的 \r\n 存在於輸出框與複製到剪貼簿的字串裡,但貼回上方的輸入框又會被正規化回 LF,所以請把這一步放在最後。
  • 四種模式都不看行的內容,不會刪除重複的行,也不會自動判斷哪裡才是真正的段落結尾。沒有檔案上傳,只處理貼進文字框的內容;改寫由這個分頁的 JavaScript 執行,你的文字不會被送出,而頁面本身仍會載入廣告等第三方資源。

常見問題

「移除多餘換行」到底會留下幾個空行?

一個。它的規則是「連續三個以上的換行符縮成兩個」,而兩個相鄰的換行符在畫面上呈現的就是一個空行。換句話說,不管你原本有兩個、五個還是十個連續空行,結果都是一個;原本就只有一個空行的地方則完全不動。

我選了「移除多餘換行」卻沒有任何變化,為什麼?

最常見的原因是那些空行並不是真的空的,裡面有空格或 Tab。這個模式只認連續的換行符,中間夾一個空格就構不成連續。另一種可能是你原本就只有單一空行,那本來就在保留範圍內。要處理前者,先在編輯器裡用正規式清掉行尾空白,再回來跑一次。

接成一行之後,中文字之間為什麼多了空格?

因為換行是被替換成空格,而不是被直接刪掉——這對英文是必要的,否則兩行交界的單字會黏在一起變成錯字。中文不需要這個空格,但工具無法可靠判斷交界處是中文還是英文,接完之後請自行取代掉。

「CRLF → LF」好像沒有作用?

在這個介面裡確實幾乎不會有作用。網頁的文字框在接收內容時就會把 Windows 換行正規化成 LF,所以程式拿到的字串裡根本不存在 \r\n 可以轉換。要真正對檔案做換行符轉換,請用編輯器的「行尾格式」設定或命令列工具。順帶一提,這裡的處理全在你的裝置上進行,貼進來的內容不會被上傳到任何伺服器。