PERL - статьи

       

PERL - статьи


Функция grep так-же позволяет запонять массив значениями. Например нужно получить список расширений файлов в заданной директории:

while(){push @files, $_} #читаем директорию @test = grep { s|.*/(.*?)\.(.*)|$2| } @files; #оставляем в директории только расширения файлов

можно использовать признак четности для занесения в массив: @test1=qw(1 2 3 4 5 6 7 8 9); @evens = grep($_%2 == 1) @test1;

Или более сложное регулярное выражение для вытаскивания всех e-mail адресов из текстовой странички:

@mass=grep{s/(.*) ([\w+\-\.]+\@[\w\-\.]+\.\w{2,3})(.*)/$2/ig} split /\n/, $test;

Здесь используется укороченная запись:

@mass=grep {/pattern/} split /\n/, $test;

которая эквивалента записи из двух сторчек:

@uuu=split /\n/, $test; @mass=grep {/pattern/} @uuu;



Содержание раздела