sort
sort SUBNAME LIST
sort BLOCK LIST
sort LIST
LISTをソートしてLISTを返す関数です。
sort LISTという形式では、LISTの中身を文字列として比較して昇順(小さい順)に並べ替えたLISTを返します。
sort BLOCK LISTという形式では、BLOCKで並べ換え方の指定ができます。
sort SUBNAME LISTという形式では、SUBNAMEで並べ換えの方法を記述した関数を指定します。
BLOCK、SUBNAMEどちらの形式でも$aと$bを使って2つの要素の大小比較を行います。大小比較の結果は、$aを前に置く場合は負の値、$bを前に置くなら正の値、同じ場合には0にします。
サンプルプログラム
# sort LIST @foo = sort @foo; # sort BLOCK LIST @foo = sort {$a <=> $b} @foo; # @fooを数値の昇順(小さい順)で並べ換えます # sort SUBNAME LIST @foo = sort hoge @foo; sub hoge { # 文字列を大文字小文字関係なく降順(大きい順)で並べ換えます return lc($b) cmp lc($a); }
関連項目
・配列値のソート・reverse関数
・比較演算子