Sådan bruges funktionen Perl Array Grep ()

Funktionen Perl grep () er et filter, der kører et regelmæssigt udtryk på hvert element i en matrix og kun returnerer de elementer, der evaluerer som rigtigt. Brug af regelmæssige udtryk kan være ekstremt kraftfuldt og komplekst. Grep () -funktionerne bruger syntaks @List = grep (Expression, @ array).

Brug af Grep () -funktion til at returnere ægte udtryk

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

Tænk på arrayet @myNames som en række nummererede felter, der går fra venstre mod højre og nummereres, startende med et nul. Grep () -funktionen går gennem hvert af elementerne (boksene) i matrixen og sammenligner deres indhold med det regulære udtryk. Hvis resultatet er rigtigt, føjes indholdet derefter til det nye @grepNames array.

I ovenstående eksempel er det regulære udtryk / ^ A / på udkig efter enhver værdi, der starter med en hovedstad A. Efter at have sikret gennem indholdet af @myNames-matrixen, bliver værdien af ​​@grepNames ('Alexander', 'Andrew'), de eneste to elementer, der begynder med en hovedstad A.

instagram viewer

At vende udtrykket i en Grep () -funktion

En hurtig måde at gøre denne funktion mere magtfulde er at vende det regulære udtryk med NOT-operatøren. Det regulære udtryk kigger derefter efter elementer, der evalueres til falsk og flytter dem ind i det nye array.

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

I ovenstående eksempel er det regulære udtryk på udkig efter enhver værdi, der ikke starter med en kapital A. Efter at have sikret gennem indholdet af @myNames-matrixen, bliver værdien af ​​@grepNames ('Jacob', 'Michael', 'Joshua', 'Matthew').

Om Perl

Perl er et tilpasseligt programmeringssprog, der ofte bruges til at udvikle webapplikationer. Perl er et fortolket, ikke kompileret sprog, så dets programmer tager mere CPU-tid end et kompileret sprog - et problem, der bliver mindre vigtigt, når hastigheden på processorer øges. Det er dog hurtigere at skrive i Perl end at skrive på et samlet sprog, så den tid, du sparer, er din.

instagram story viewer