Funktsiooni Perli massiivi grep () kasutamine

Funktsioon Perli grep () on filter, mis juhib massiivi iga elemendi korral tavalist avaldist ja tagastab ainult need elemendid, mis hindavad tõsi. Regulaarsete avaldiste kasutamine võib olla äärmiselt võimas ja keeruline. Funktsioonid grep () kasutavad süntaksit @List = grep (Expression, @array).

Funktsiooni Grep () kasutamine õigete avaldiste tagastamiseks

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

Mõelge massiivile @myNames kui nummerdatud kastide reale, mis läheb vasakult paremale ja nummerdatakse nulliga. Funktsioon grep () läbib kõik massiivi elemendid (kastid) ja võrdleb nende sisu regulaarse avaldisega. Kui tulemus on tõsi, siis lisatakse sisu uude massiivi @grepNames.

Ülaltoodud näites otsib regulaaravaldis / ^ A / väärtust, mis algab suurtähega A. Pärast @myNames-massiivi sisu läbi sõelumist saab @grepNames-i väärtus ('Alexander', 'Andrew'), mis on ainsad kaks elementi, mis algab tähega A.

Grep () funktsiooni avalduse ümberpööramine

instagram viewer

Üks kiire viis selle konkreetse funktsiooni võimsamaks muutmiseks on regulaarväljendi pööramine NOT-operaatoriga. Regulaarlause otsib seejärel elemente, mida hinnatakse vale ja teisaldab need uude massiivi.

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

Ülaltoodud näites otsib regulaaravaldis väärtust, mis ei alga A-tähega. Pärast @myNames-massiivi sisu läbi sõelumist saab @grepNames-i väärtus ('Jacob', 'Michael', 'Joshua', 'Matthew').

Perli kohta

Perl on kohandatav programmeerimiskeel, mida sageli kasutatakse veebirakenduste arendamiseks. Perl on tõlgitud, mitte kompileeritud keel, seega võtavad selle programmid rohkem protsessori aega kui kompileeritud keel - probleem, mis muutub töötlejate kiiruse kasvades vähem oluliseks. Perlis on kirjutamine siiski kiirem kui kompileeritud keeles kirjutamine, nii et kokkuhoitud aeg on teie enda oma.

instagram story viewer