«

»

nov
13

Perl – funzione grep ed Array

Ho trovato un metodo veloce e molto bello a livello di codice per trovare se un elemento appartiene o meno ad un array. Putroppo non mi ricordo più la fonte (tanto che non mi ricordavo neppure come si faceva e me lo sono dovuto ricavare) percui ne approfitto per scriverlo qui perchè rimanga a perenne memoria (quantomeno per me ;-) ).

Ma andiamo con ordine. Normalmente, per trovare se un elemento appartiene ad un array bisognerebbe scandire tutto l’array e fare il confronto con i vari elementi dello stesso. Come secondo metodo invece si può utilizzare la funzione grep nella sua forma normale ( @uscita = grep(espressione, @array) ) per poi vedere se il vettore ritornato è vuoto o meno. La forma che ho trovato utilizza anch’essa la funzione di grep ma in modo più sofisticato:


if (  grep ( {$_ eq espressione} @array)) { print "L'elemento è presente"; }
else {print "L'elemento non è presente";}

In tal modo è possibile con una sola riga di codice ottenere lo stesso risultato. Notevole, vero?

Lascia un Commento

Il tuo indirizzo mail non sarà pubblicato!

Puoi usare i seguenti tag HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>