Cómo usar la función Grep () de Perl Array

La función Perl grep () es un filtro que ejecuta una expresión regular en cada elemento de una matriz y devuelve solo los elementos que se evalúan como cierto. El uso de expresiones regulares puede ser extremadamente poderoso y complejo. Las funciones grep () usan la sintaxis @List = grep (Expression, @array).

Uso de la función Grep () para devolver expresiones verdaderas

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

Piense en la matriz @myNames como una fila de cuadros numerados, que van de izquierda a derecha y numerados comenzando con un cero. La función grep () recorre cada uno de los elementos (cuadros) en la matriz y compara sus contenidos con la expresión regular. Si el resultado es cierto, el contenido se agrega a la nueva matriz @grepNames.

En el ejemplo anterior, la expresión regular / ^ A / busca cualquier valor que comience con una A mayúscula. Después de examinar el contenido de la matriz @myNames, el valor de @grepNames se convierte en ('Alexander', 'Andrew'), los únicos dos elementos que comienzan con una A mayúscula.

instagram viewer

Invertir la expresión en una función Grep ()

Una forma rápida de hacer que esta función particular sea más poderosa es invertir la expresión regular con el operador NOT. La expresión regular busca elementos que evalúen falso y los mueve a la nueva matriz.

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

En el ejemplo anterior, la expresión regular busca cualquier valor que no comience con A mayúscula. Después de examinar los contenidos de la matriz @myNames, el valor de @grepNames se convierte en ('Jacob', 'Michael', 'Joshua', 'Matthew').

Sobre Perl

Perl es un lenguaje de programación adaptable que se usa con frecuencia para desarrollar aplicaciones web. Perl es un lenguaje interpretado, no compilado, por lo que sus programas requieren más tiempo de CPU que un lenguaje compilado, un problema que se vuelve menos importante a medida que aumenta la velocidad de los procesadores. Sin embargo, escribir en Perl es más rápido que escribir en un idioma compilado, por lo que el tiempo que ahorre es suyo.