Ako používať funkciu Perl Array Grep ()

click fraud protection

Funkcia Perl grep () je filter, ktorý spúšťa regulárny výraz na každom prvku poľa a vracia iba tie prvky, ktoré sa vyhodnotia ako pravdivý. Používanie regulárnych výrazov môže byť mimoriadne silné a zložité. Funkcie grep () používajú syntax @List = grep (Expression, @array).

Použitie funkcie Grep () na vrátenie pravdivých výrazov

@myNames = („Jacob“, „Michael“, „Joshua“, „Mathew“, „Alexander“, „Andrew“);
@grepNames = grep (/ ^ A /, @myNames);

Pole @myNames si predstavte ako rad očíslovaných políčok, zľava doprava a očíslovaných od nuly. Funkcia grep () prechádza každým z prvkov (polí) v poli a porovnáva ich obsah s regulárnym výrazom. Ak je výsledok pravdivý, potom sa obsah pridá do nového poľa @grepNames.

Vo vyššie uvedenom príklade regulárny výraz / ^ A / hľadá akúkoľvek hodnotu, ktorá sa začína veľkým písmenom A. Po preosievaní cez obsah poľa @myNames sa hodnota @grepNames stane („Alexander“, „Andrew“), jedinými dvoma prvkami, ktoré začínajú na veľké písmeno A.

Obrátenie výrazu vo funkcii Grep ()

instagram viewer

Jeden rýchly spôsob, ako vylepšiť túto konkrétnu funkciu, je obrátiť regulárny výraz pomocou operátora NOT. Regulárny výraz potom hľadá prvky, ktoré sa vyhodnotia nepravdivý a presunie ich do nového poľa.

@myNames = („Jacob“, „Michael“, „Joshua“, „Mathew“, „Alexander“, „Andrew“);
@grepNames = grep (! / ^ A /, @myNames);

Vo vyššie uvedenom príklade regulárny výraz hľadá akúkoľvek hodnotu, ktorá nezačína na veľké písmeno A. Po preosievaní cez obsah poľa @myNames sa hodnota @grepNames zmení na „Jacob“, „Michael“, „Joshua“, „Matthew“).

O spoločnosti Perl

perl je prispôsobivý programovací jazyk, ktorý sa často používa na vývoj webových aplikácií. Perl je interpretovaný, nekompilovaný jazyk, takže jeho programy zaberajú viac času CPU ako kompilovaný jazyk - problém, ktorý sa zvyšuje s rastúcou rýchlosťou procesorov, menej dôležitý. Písanie v jazyku Perl je však rýchlejšie ako písanie v kompilovanom jazyku, takže ušetríte čas.

instagram story viewer