CanDoYa
ZH-TW

刪除重複行

全程在瀏覽器裡執行,免上傳、免註冊。

輸入文字
去重後的文字
貼上文字行即可刪除重複內容 - 每行的第一次出現會被保留
分享這個工具

怎麼刪除文字中的重複行?

把文字貼到上方的輸入框,重複的行馬上就會消失,每一行的第一次出現都會照原本的順序留下來。打開忽略大小寫或去除空白,還能抓出像「Apple」和「apple」這種近似的重複,再把清理好的清單複製走就好。資料不會被上傳到任何地方,去重完全在瀏覽器本機完成。

使用方式

  1. 1貼上你的文字行. 把多行文字輸入或貼到左邊的框裡,一行一項。Windows、Mac和Unix的換行格式都能正常辨識。
  2. 2選擇比對方式. 預設情況下行必須完全一致。打開忽略大小寫可以把「Apple」和「apple」視為重複,打開去除空白可以忽略行首行尾的空格,打開刪除空白行可以清掉所有空白行。
  3. 3複製清理後的清單. 去重後的文字會即時顯示在右邊,狀態列會顯示刪除了多少重複行。按下複製按鈕就能放到剪貼簿。

適合誰用

這個工具會邊打字邊去重,而且從不修改輸入框裡的原始內容,所以可以隨意切換選項、比較結果,也不會弄丟原文。預設情況下,兩行必須逐字完全一致才會被判定為重複。忽略大小寫會把Berlinberlin當成同一行;去除空白會忽略行首行尾的空格或定位點,專門用來抓出試算表和記錄檔裡那些看不見的重複。空白行被當成結構而不是資料,除非打開刪除空白行,否則兩個空白行不會被合併成一個。整個流程都在瀏覽器端完成,拿來處理郵件清單、客戶匯出資料,或還沒公開的關鍵字調查都很安全。

常見問題

我的文字會被上傳到什麼地方嗎?

不會。去重完全透過JavaScript在瀏覽器本機執行,你的文字內容不會傳到任何伺服器。這代表郵件清單、客戶資料,或含有帳號密碼的檔案,這類不想貼到陌生網站表單裡的內容,用這個工具也很安全。

這個刪除重複行的工具是免費的嗎?

完全免費,不用註冊、不用下載,也沒有使用次數限制。它是一個靜態頁面,載入速度很快,網路不穩定時開啟一次也能繼續使用。

貼上的行數有限制嗎?

沒有硬性限制。去重是用雜湊集合來判斷,就算是幾十萬行的清單,在一般筆電上也能在一秒內處理完成。實際的上限取決於瀏覽器的記憶體,而不是這個工具本身。

遇到重複行的時候,保留的是第一行還是最後一行?

保留第一行。工具由上往下掃描,把每一行的第一次出現留在原位,刪除後面所有重複的行,所以最後的順序和你貼上時的順序完全一致。

能不排序就刪除重複行嗎?

可以,這正是這個工具的重點。像<code>sort -u</code>這類指令列技巧會先排序再去重,結果把有順序意義的資料打亂了。這個工具會保留原始的行序,只刪除重複的部分。

空白行是怎麼處理的?

空白行被當成結構而不是資料,所以兩個空白行不會被合併成一個。如果想要一份完全沒有空白行的清單,打開刪除空白行,所有空白或只含空格的行都會被清掉。

能抓出只是空白或大小寫不同的重複行嗎?

可以。打開去除空白可以忽略行首行尾的空格和定位點,打開忽略大小寫可以不分大小寫進行比對。兩個選項都打開時,「 Apple」和「apple」會被視為同一行,但保留下來的那一行仍會照貼上時的原樣顯示。要說明的是,忽略大小寫主要是針對清單裡夾雜的英文單字、網址或電子郵件地址這類拉丁字母內容,中文本身沒有大小寫的概念。

支援Windows(CRLF)換行符號嗎?

支援。Windows(\r\n)、Unix(\n)和舊版Mac(\r)的換行符號在切分時都能被正確辨識,輸出結果統一使用標準的Unix換行,貼到任何編輯器或試算表都不會有問題。