行の並べ替え・シャッフル
Line Sorter & Shuffler
行を辞書順・数値順・長さ順に並べ替えるか無作為に混ぜ、逆順と大文字小文字の扱いも選べます。
行の一覧を並べ替えます。何を基準にするかは仮定せず明示します。数字が混じるものは自然順、韓国語は가나다、指定した言語の照合規則、コードポイントそのまま、長さ順、そして本物のシャッフルがあります。同じ一覧でも基準ごとに答えが変わります。
行
並べ替え
数字の並びを数として比べるので、file9がfile10より前に来ます。
並べ替えの結果
行数
6
使い方
何よりも先に基準を選びます
ファイル名とバージョンは自然順、かな交じりの一覧は言語別でja-JPを指定、コードポイントはArray.sortが返す機械の順序がどうしても必要なときだけにしてください。
方向と大文字小文字の規則を決めます
既定では大文字小文字を区別しません。区別すると大文字がすべて小文字より前に来ますが、名前の一覧でそれを望むことはまれだからです。
無作為が必要ならシャッフルを使います
シャッフルはFisher–Yatesの一巡であって、無作為な比較関数ではありません。無作為な比較関数は誤ったシャッフルの古典で、偏りがあり、エンジンごとに分布も違います。
よくある質問
file10がfile9より前に来るのはなぜですか
コードポイント順だからです。1文字ずつ比べると「1」が「9」より前になります。数字の並びを数として比べる自然順に変えると、file9が先に来ます。
かなの一覧が変な順序になります
コードポイント順は、ひらがなだけの一覧なら偶然おおむね五十音順になります。ただしMacからコピーした文字は濁点が分かれた形で保存されていて合成済みの文字より前に来るので崩れ、ひらがなとカタカナも別の塊に分かれます。言語別を選んでja-JPを指定すると、どちらも解決します。
言語別は何が違うのですか
その言語自身の照合表を使います。スウェーデン語はåをzの後ろに置き、ドイツ語はäの扱いが2通りあり、チェコ語はchを1文字として扱います。一覧にそういう事情がなければ、既定としては自然順のほうが優れています。
ここから渡せます
重複行の削除
Duplicate Line Remover
重複した行を消すか、重複だけを残すか、各行が何回出てきたかを数えます。
行番号の付与
Line Numbering
開始値・増分・桁揃え・区切り文字を決めて行頭の番号を付けたり外したりします。
テキストの反転
Text Reverser
文字列・単語の並び・行の順序を逆にし、書記素単位で扱うので絵文字も壊れません。
リスト形式の変換
List Formatter
複数行をカンマ区切り・引用符付きのSQL IN句・JSON配列・箇条書きに変え、また元に戻します。
次の一手
このツールが出したものをそのまま受け取れる道具です。
リスト形式の変換
List Formatter
複数行をカンマ区切り・引用符付きのSQL IN句・JSON配列・箇条書きに変え、また元に戻します。
ランダム抽選
Random Picker
貼り付けた一覧から1つか複数を引き、重み付けとルーレット演出にも対応します。
文字数カウント
Word & Character Counter
空白を含む場合と含まない場合の文字数、単語数、行数、段落数、UTF-8バイト数を数えます。
重複行の削除
Duplicate Line Remover
重複した行を消すか、重複だけを残すか、各行が何回出てきたかを数えます。
検索と置換
Find & Replace
文字列・単語単位・正規表現で置換し、キャプチャグループを使って、当たった箇所をすべて事前に確認できます。
Markdownエディタ
Markdown Editor
Markdownをリアルタイムのプレビュー付きで書き、GFMの表とタスクリストごとHTMLに書き出します。