行の並べ替え — 五十音順・ABC順・数字順ソート
数字の自然順に対応した行の並べ替え・シャッフルツールです
ブラウザー内で処理・アップロード不要
どんなツールか
1行に1項目ずつ書いたリストを、好きな順番に並べ替えるツールです。名前を五十音順やABC順にする、ファイル名を数字の順に並べる、行の長さで並べる、リストをシャッフルしてランダムな順番を作る、といった使い方ができます。重複行や空行の削除にも対応し、並べ替え前と後の行数も表示します。
使い方
- 入力欄に、1行に1項目ずつリストを貼り付けます。
- 並べ方を「五十音順・ABC順」「文字数順」「ランダムに並べ替え」から選びます。
- オプションを設定します。「逆順」は降順に、「数字の自然順」は数字を数値として比較し、「大文字・小文字を無視」と「前後の空白を無視」は行の比較方法を変えます。
- 必要なら「重複行を削除」や「空行を削除」をオンにします。
- 結果をコピーします。ランダムの場合は「もう一度シャッフル」で別の順番になります。
並べ替えのしくみ
- 五十音順・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のシャッフルを使い、偏りのない方法で範囲を選びます。順番が変わるのは「もう一度シャッフル」を押したときだけで、ほかのオプションを切り替えても変わりません。
入力した行はアップロードされますか?
されません。並べ替えはすべてブラウザーの中で行われます。