ブログ
日本語

行の並べ替え — 五十音順・ABC順・数字順ソート

数字の自然順に対応した行の並べ替え・シャッフルツールです

ブラウザー内で処理・アップロード不要

0行 → 0行(0行を削除)

どんなツールか

1行に1項目ずつ書いたリストを、好きな順番に並べ替えるツールです。名前を五十音順やABC順にする、ファイル名を数字の順に並べる、行の長さで並べる、リストをシャッフルしてランダムな順番を作る、といった使い方ができます。重複行や空行の削除にも対応し、並べ替え前と後の行数も表示します。

使い方

  1. 入力欄に、1行に1項目ずつリストを貼り付けます。
  2. 並べ方を「五十音順・ABC順」「文字数順」「ランダムに並べ替え」から選びます。
  3. オプションを設定します。「逆順」は降順に、「数字の自然順」は数字を数値として比較し、「大文字・小文字を無視」と「前後の空白を無視」は行の比較方法を変えます。
  4. 必要なら「重複行を削除」や「空行を削除」をオンにします。
  5. 結果をコピーします。ランダムの場合は「もう一度シャッフル」で別の順番になります。

並べ替えのしくみ

  • 五十音順・ABC順:ページの言語(日本語)を指定したIntl.Collatorで比較します。比較の前に各行をUnicodeのNFCで正規化します。かなの順番はブラウザーの日本語の照合規則に従い、漢字は読みではなく照合規則上の順番で並びます。
  • 数字の自然順:照合のnumericオプションを使い、連続する数字をひとつの数として比較します。
  • 大文字・小文字を無視:大文字と小文字を同じものとして扱い、同順の行は入力の順番を保ちます。オフの場合、同じ文字なら小文字が大文字より前に来ます。
  • 文字数順:Unicodeの文字数で並べ、同じ文字数の行は五十音順・ABC順で並べます。
  • 逆順:比較の向きを反対にします。安定ソートなので、同じ行は入力の順番を保ちます。
  • 重複行を削除:並べ替えの前に、最初に出てきた行だけを残します。
  • 空行を削除:並べ替えの前に、スペースやタブだけの行も含めて空行を取り除きます。
  • ランダムに並べ替え:crypto.getRandomValuesを使った偏りのないFisher-Yatesシャッフルです。

並べ替えの例

入力 オプション 結果
pear、Apple、banana ABC順・大文字小文字を無視 Apple、banana、pear
file10、file2、file1 初期設定 file1、file10、file2
file10、file2、file1 数字の自然順 file1、file2、file10
ccc、a、bb 文字数順・逆順 ccc、bb、a
さくら、あめ、かさ 五十音順 あめ、かさ、さくら

よくある質問

数字の自然順とは何ですか?

連続する数字を数値として比較する並べ方です。オフにするとfile10がfile2より前に来ます。オンにするとfile1、file2、file10の順になります。

日本語の五十音順に並びますか?

ひらがなとカタカナは、ブラウザーの日本語の照合順序(Intl.Collator)に従っておおむね五十音順に並びます。漢字は読みがなを知らないため、読み順にはなりません。読みで並べたい場合は、かなで書いた行を使ってください。

シャッフルはどのくらいランダムですか?

ブラウザーの暗号用乱数生成器(crypto.getRandomValues)とFisher-Yatesのシャッフルを使い、偏りのない方法で範囲を選びます。順番が変わるのは「もう一度シャッフル」を押したときだけで、ほかのオプションを切り替えても変わりません。

入力した行はアップロードされますか?

されません。並べ替えはすべてブラウザーの中で行われます。

ほしいツールはありますか?