Программирование > Perl
массив с директориями
Paul56:
Ребята, подскажите пожалуйста:
Есть массив с директориями
например:
opendir (DIR, "./") || die print "$!";
@dir = readdir(DIR);
close(dir);
Есть ещё один массив:
@iskl=("i", "lightsoft", "price", "free_tour.swf", "index.cgi", "search.cgi", "style.css", ".", "..");
как из массива @dir исключить массив @iskl.
За ранее спасибо за ответ.
arto:
grep + hash
Paul56:
А можно поподоробнее плиз?
arto:
@iskl{@iskl} = @iskl;
grep { not exists $iskl{$_} } @dir;
ravshaniy:
предлагаю сделать чуть длиннее
--- Цитировать ---
@dir = grep { !in_array($_, @iskl) } @dir;
print $_, \' \' foreach @dir;
--- Код: ---
sub in_array($@){
my $el = shift;
my @iskl = @_;
foreach (@iskl){
return 1 if ($el eq $_);
}
return 0;
}
--- Конец кода ---
--- Конец цитаты ---
может быть эта функция понадобится еще, так ради читаемости
Навигация
Перейти к полной версии