O'Reilly logo

Perl Pocket Reference, 5th Edition by Johan Vromans

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Array and List Functions

defined expr

Not specifically an array function, but provides a convenient way to test whether an array element has a defined value.

delete [ local ] elt
delete [ local ] @array[index1, . . . ]

elt must specify an array element like $array[index] or expr->[index]. Deletes the specified elements from the array. With local, the deletion is local to the enclosing block. Returns aliases to the deleted values. Deleting the last elements of an array will shorten the array.

each @array

In list context, returns a two-element list consisting of the index and an alias to the value for the next element of the array. In scalar context, returns only the index. After all values have been returned, an empty list is returned. The next call to each after that will start iterating again. A call to keys or values will reset the iteration.

exists elt

elt must specify an array element (see delete above). Checks whether the specified array element exists.

grep expr, list
grep block list

Evaluates expr or block for each element of the list, locally aliasing $_ to the element. In list context, returns the list of elements from list for which expr or block returned true. In scalar context, returns the number of such elements.

join expr, list

Returns the string formed by inserting expr between all elements of list and concatenating the result.

keys @array

In list context, returns a list of all the keys of the array. In scalar context, returns the number of elements.

map expr, list
map block list ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required