テキストの重複削除
1 行に 1 件。重複を削除しても元の順序を保ちます(並べ替えてから重複削除するのではありません)。
説明
空行は自動的に削除されます。空行による段落構造を残したい場合は、まず「改行を削除」ツールの「余分な空行を削除」モードで処理してください。
使う場面
- 複数の経路から書き出したメール一覧やキーワード表を 1 つにまとめ、同じ行が何度も出てくるので、元の並び順のまま 1 行ずつ残したいとき。
- 複数の CSV の同じ列(SKU や URL の一覧)を結合し、優先順位として並べてある順番を崩さずに重複だけ消したいとき。
使わないほうがよい場面
- 各行が何回繰り返されたか、どこに重複があったかを知りたいとき。初出の 1 行だけを残し、回数は表示しません。
- コードや Markdown で、繰り返し行そのものに意味があるとき(重複した import、表の 2 本目の |---|---| 区切り行など)。行単位の重複除去では消えてしまいます。
制限とプライバシー
処理はブラウザ内で完結し、送信もログへの記録もありません。制限:行全体の完全一致のみ(大文字小文字と前後の空白は任意で無視、あいまい一致や同義語の統合はしません)。空行は常に破棄。結果は改行 1 つで連結し textarea に表示するため、数十万行では表示が重くなります。
よくある質問
重複を消すと行の順番は変わりますか?
変わりません。上から下へ 1 回走査し、初出の行はその位置に残して後から出た同じ行を捨てるので、元の並びがそのまま残ります。優先順位として並べたリストの照合に向いています。大文字小文字を無視する場合も、残るのは先に現れた表記です。
前後の空白を無視すると、どちらの表記が残りますか?
空白を除いたほうです。比較にも出力にも trim 後の文字列を使うため、行頭・行末のスペースやタブは結果から消えます。チェックを外すと入力どおりに残り、完全な空行だけが捨てられます(空白だけの行は残ります)。
10 万行のリストでも固まりませんか?
処理は O(n) で、各行を 1 回 trim / 小文字化してキーにするだけなので、10 万行でも通常は数百ミリ秒です。重く感じるのは貼り付けと textarea の描画で、その規模ではスクロールや選択がもたつくため、必要なら分割して処理してください。