本文へスキップ
kitto works
ツール一覧

行ソート・重複削除|テキストの並び替え・重複行削除・シャッフル

複数行のテキストを昇順・降順にソートしたり、重複する行を削除したり、ランダムにシャッフルしたりできる無料ツールです。行頭・行末の空白除去、空行の除外、大文字小文字を無視する比較にも対応。入力したテキストはブラウザの中だけで処理され、外部には送信されません。

入力したテキストはブラウザの中だけで処理され、どこにも送信されません。

結果

入力行数
0
出力行数
0
除外した空行数
0
削除した重複行数
0

テキストを入力すると、結果がここに表示されます。

使い方

  1. テキストエリアに、1行1項目の形式で並び替えたい内容を貼り付けます。
  2. 「昇順ソート」「降順ソート」「重複行を削除」「シャッフル」から操作を選びます。
  3. 必要に応じて空白除去・空行除外・大文字小文字の区別を無視するオプションを設定します。結果はその場に表示されます。

計算・変換の根拠

行の区切り方

テキストは改行(\n)で区切って1行ずつの配列にします。空の入力は1行の空文字列として扱います。

処理の順序

  1. 「行頭・行末の空白を除去する」がオンなら、各行をトリムします。
  2. 「空行を除外する」がオンなら、空白のみの行を取り除きます(このとき、行頭・行末の空白を除去するオプションがオフでも、空白のみの行は正しく空行として判定されます)。
  3. 選んだ操作(ソート・重複削除・シャッフル)を実行します。

ソートの並び順について

ソートは、日本語の辞書順のような複雑な言語ルールではなく、文字のUnicode符号位置による単純な比較を使っています。ブラウザやOSによって結果が変わらないようにするための選択です。実用上はひらがな・カタカナ・英数字がおおむね直感的な順序に並びますが、数字を含む文字列(例:「2」と「10」)は数値としてではなく文字列として比較されるため、「10」が「2」より前に来る場合があります。

「大文字・小文字を区別しない」をオンにした場合、比較にのみ小文字化した値を使い、結果に表示される文字自体の大文字・小文字はそのまま保たれます。

重複行削除について

最初に出現した行を残し、それ以降に出てくる同じ内容の行を削除します。行の順序は変えません。

シャッフルについて

Fisher–Yatesという標準的なアルゴリズムでランダムに並び替えます。同じ結果を避けたい場合は「もう一度シャッフル」ボタンで再実行できます。

送信されるデータについて

入力したテキストや選択したオプションは、いずれもブラウザの外に送信されません。すべての処理はJavaScriptによってお使いのブラウザ内で完結します。

よくある質問

入力したテキストはどこかに送信されますか?

送信されません。並び替えや重複削除の処理はすべてお使いのブラウザの中だけで行われ、サーバーへの通信は発生しません。

ソートの並び順は五十音順になりますか?

厳密な五十音順(辞書順)ではなく、文字のUnicode符号位置による単純な比較を採用しています。ひらがな・カタカナ・英数字はおおむね直感的な順序になりますが、細かい並び順(濁点・半濁点の扱いなど)が辞書とは異なる場合があります。

数字を含む行を数値としてソートできますか?

できません。すべての行は文字列として比較されるため、「10」は「2」より前に並ぶことがあります(文字として「1」が「2」より小さいため)。数値の大小で並べたい場合は、この結果を目視で確認・調整してください。

重複削除で、大文字・小文字が違う行はどう扱われますか?

既定では別の行として扱われます。「大文字・小文字を区別しない」オプションをオンにすると、大文字・小文字だけが違う行も重複とみなされ、最初に出現した表記だけが残ります。

空行はどうなりますか?

既定では空行もそのまま残ります。「空行を除外する」オプションをオンにすると、空白のみの行を含めて結果から取り除かれます。