Forum Webscript.Ru
Программирование => Perl => Тема начата: Paul56 от 26 Июня 2005, 22:59:43
-
допустим есть:
$ms[1] = "news1.htm";
$ms[2] = "news10.htm";
$ms[3] = "news2.htm";
$ms[4] = "news3.htm";
а как сделать:
news1.htm news2.htm news3.htm news10.htm
наверное через sort, но не помогает.
Буду очень признателен за помощь!
-
@ordered = map { $_->[1] }
sort { $a->
map { [news_num($_ ), $_] }
@ms;
sub news_num {
my $str=shift;
if ($str=~/news(\\d+)\\.htm/) {
return $1;
}
else {
return 999;
}
}
-
Green Kakadu
Спасибо большое исключительно ;-)
-
Perl CookBook Recipe 4.16 Sorting a List by Computable Field