文字列のsort
ゆーさく
[E-Mail]
2000/03/11(土) 20:46:40
初めて投稿させて頂きます。
色々な本、Webを見ても解決できないので、
ここで質問させて頂く事にしました。
全角文字列が入った配列をsortしたいんですが、
文字列中の 特定の場所(私の場合は、後ろから四文字目)の
半角数字をsortの対象にし、それを基準に配列の並び替えを
行いたいのです。
初めは、splitで区切って実行したのですが、
それだと配列を並び替えする事にはつながらない事に
気づきました。
どうかご教授お願いします。
ふじ
2000/03/12(日) 01:14:52
$_[0] = "cdcae";
$_[1] = "greve";
$_[2] = "yxrde";
$_[3] = "ggcce";
print join "\n", sort {substr($a, -4, 1) cmp substr($b, -4, 1)} @_;
こんな例で分かりますか?
sortの比較する条件 (sort の後のブロック {} 内)
を後ろから2文字目で比較するように書いてやれば良いのです。
ゆーさく
[E-Mail]
2000/03/12(日) 17:55:25
[[解決]]
わ、ありがとうございます。
sortって条件を指定できたんですね。
まだperlを初めて3週間あまりなので、
何も分からず困っておりました。
チャレンジしてみます。本当にありがとうございました。