5部 関数リファレンス

sort

2011年9月20日
sort [SUBNAME] LIST
sort [BLOCK] LIST

配列LISTの値をソートして返します。引数SUBNAMEには、ソートの比較式を指定できます(<=>演算子やcmp演算子が便利です)。SUBNAMEBLOCKを省略すると、標準の文字列比較の順番でソートが行なわれます。SUBNAMEの代わりに、無名のインラインソートルーチンとして、BLOCKを書くことができます。

sortの使い方

# 文字の順でソート
@sort_array = sort @array;
# 文字の順で逆順にソート
@sort_array = sort {$b cmp $a} @array;
# 数値の昇順にソート
@sort_array = sort {$a <=> $b} @files;
# 数値の降順にソート
@sort_array = sort {$b <=> $a} @files;
# サブルーチン名を指定してソート
sub byage {
$age{$a} <=> $age{$b}; # 整数を仮定
}
@sort_array = sort byage @class; 

引数SUBNAMEは、スカラ変数でもよく、その場合には、その値が使用するサブルーチンの名前と解釈されます。

Comment

コメントを残す

メールアドレスが公開されることはありません。

リズムファクトリーはホームページの制作会社です。
ホームページ制作に関するご要望・ご相談はこちらからどうぞ。