grep
Синтаксис
grep BLOCK LIST grep EXPR, LIST
Описание
Функция во многом похожа на одноименную программу grep и ее многочисленных родственников.
Однако имеются и некоторые отличия. В частности, функция не ограничена использованием только регулярных выражений.
Функция grep оценивает значение BLOCK или EXPR на предмет совпадения с каждым элементом
списка LIST (устанавливая локально значение $_ поочередно равным каждому элементу) и возвращает
список значений, составленный из этих элементов, которые удовлетворяют критерию совпадения.
При вызове в скалярном контексте функция возвращает количество совпадений.
Например:
@foo = grep(!/^#/, @bar); # Вырезаем комментарии или, что эквивалентно:
@foo = grep {!/^#/} @bar; # Вырезаем комментарии
Обратите внимание, что, поскольку $_ представляет собой ссылку на списочное значение, эта
переменная может использоваться для модификации элементов массива. Но хотя эта возможность
документирована и весьма полезна, ее бездумное применение может привести к непредсказуемым результатам,
если LIST не является именованным массивом.
Подобным же образом grep работает и со списками. Это означает, что модификация списка, возвращенного
grep, приведет к модификации исходного списка.
Thanks
2023-11-16 22:30:18 Svetlana Thank you very useful information
Оставить комментарий:
|
|