使い方
「入力」に1行に1件ずつ値を貼り付けると、「結果」には値ごとに最初に出てきた行だけが残ります。残った行の順番は入力したときのままで、「結果」の横には「重複した行を3行削除しました。」のように削除した行数が出ます。重複が1つもなければ「重複した行はありませんでした。」と表示されます。
オプションは2つのグループに分かれています。「比較方法」の3つはどの行を同じ行とみなすかを決め、「出力」の「削除された行だけ表示」は結果に何を出すかを決めます。
同じ行とみなす基準
オプションをすべてオフにしていると、行の文字が最初から最後までぴったり同じでなければ同じ行になりません。スペース1つ、大文字1つが違うだけでも別の行として残ります。「比較方法」のオプションは、この基準をゆるめるためのものです。
- 大文字・小文字を区別しない:
Apple、apple、APPLEを同じ値とみなし、そのうち最初に出てきた表記を残します。 - 比較前に前後の空白を除く:行頭と行末のスペース、タブ、全角スペースを外してから比べます。外すのは比べるときだけなので、残る行に付いていた空白は結果にもそのまま残ります。
- 空行を無視する:空行を比較からも結果からも外します。
オプションに関係なく、いつも同じ行として扱うケースが1つあります。アクセント記号の付いたアルファベット(é)、濁点の付いたかな(が)、ハングル(가)のような文字は、完成した1文字で保存されていることもあれば、もとの文字と記号(ハングルは子音と母音)に分かれたまま保存されていることもあります(macOSで作ったファイル名によく見られます)。画面ではまったく同じに見えるこの2通りを、同じ行として処理します。
オプションによる結果の違い
次の6行を入れたときの結果です。3行目は前後にスペースが1つずつ付いています。
hong@test.com
Kim@test.com
hong@test.com
kim@test.com
lee@test.com
hong@test.com
| オンにしたオプション | 残る行 | 削除される行 |
|---|---|---|
| なし | 5行 | 1行(6行目) |
| 大文字・小文字を区別しない | 4行 | 2行(4行目、6行目) |
| 比較前に前後の空白を除く | 4行 | 2行(3行目、6行目) |
| 両方 | 3行 | 3行(3行目、4行目、6行目) |
両方をオンにすると、hong@test.com、Kim@test.com、lee@test.comの3行が残ります。kim@test.comよりKim@test.comのほうが先に出てくるので、大文字で始まる表記が残ります。どちらの表記を残すかは選べず、いつも先に出てきたほうです。
空行の扱い
「空行を無視する」をオフにしていると、空行も1つの値です。空行がいくつもあれば、最初の1つだけが残り、あとは重複として削除されます。段落の間を空行で区切った文章を入れると、最初の空行だけが残って段落どうしがくっついてしまうので、そうした文章には向きません。
「空行を無視する」が空行とみなすのは、文字が1つもない行だけです。スペースやタブだけの行も外したいときは、「比較前に前後の空白を除く」も一緒にオンにしてください。
削除された行だけ表示
「削除された行だけ表示」をオンにすると結果が入れ替わり、残る行ではなく削除される行だけが入力した順に並びます。実際に消す前に、何がなくなるのかを確かめるための表示です。同じ値が3回出てくれば2回目と3回目の両方が削除されるので、結果には2回出てきます。a、b、a、aの4行を入れると、結果はa、aの2行です。
行の一部だけが同じ場合
比べるのはいつも行全体です。カンマやタブで列を区切った表から、特定の列が同じ行を探すことはできません。1,kimと2,kimは名前が同じでも別の行なので、両方とも残ります。名前を基準に重複を消したいなら、名前の列だけをコピーして入れてください。住所のように1件が複数行にまたがるリストも、行ごとに別々に比べるため向いていません。
