A Perl grep () függvény egy szűrő, amely szabályos kifejezést futtat egy tömb minden elemére, és csak azokat az elemeket adja vissza, amelyek igaz. A reguláris kifejezések használata rendkívül erőteljes és összetett lehet. A grep () függvények a @List = grep (Expression, @array) szintaxist használják.
A Grep () függvény használata a valódi kifejezések visszaadására
@myNames = ('Jacob', 'Michael', 'Joshua', 'Mathew', 'Alexander', 'Andrew');
@grepNames = grep (/ ^ A /, @myNames);
Gondolj a @myNames tömbre számozott sorokként, balról jobbra haladva, és nullával kezdve számozva. A grep () függvény átmegy a tömb minden elemén (dobozán), és összehasonlítja azok tartalmát a reguláris kifejezéssel. Ha az eredmény: igaz, a tartalmat ezután hozzáadják az új @grepNames tömbhöz.
A fenti példában a / ^ A / reguláris kifejezés olyan értéket keres, amely A nagybetűvel kezdődik. A @myNames tömb tartalmának szitálása után a @grepNames értéke lesz ('Alexander', 'Andrew'), az egyetlen elem, amely az A nagybetűvel kezdődik.
Az kifejezés megfordítása egy grep () függvényben
Ennek a funkciónak a gyorsabbá tételének egyik gyors módja a reguláris kifejezés megfordítása a NOT operátorral. A reguláris kifejezés ezután keresi az elemeket, amelyek értékelik hamis és áthelyezi őket az új tömbbe.
@myNames = ('Jacob', 'Michael', 'Joshua', 'Mathew', 'Alexander', 'Andrew');
@grepNames = grep (! / ^ A /, @myNames);
A fenti példában a reguláris kifejezés olyan értéket keres, amely nem az A betűvel kezdődik. A @myNames tömb tartalmának átvizsgálása után a @grepNames értéke lesz ('Jacob', 'Michael', 'Joshua', 'Matthew').
A Perlről
Perl egy adaptív programozási nyelv, amelyet gyakran használnak webes alkalmazások fejlesztésére. A Perl értelmezett, de nem fordított nyelv, tehát programjai több CPU-időt vesznek igénybe, mint egy fordított nyelv - ez a probléma egyre kevésbé fontos a processzorok sebességének növekedésével. A Perlben való írás azonban gyorsabb, mint a fordított nyelven történő írás, tehát a megtakarított idő a saját.