Dominic Humphries > Array-KeepGrepped-5 > Array::KeepGrepped

Download:
Array-KeepGrepped-5.tar.gz

Dependencies

Annotate this POD

CPAN RT

Open  0
View/Report Bugs
Module Version: 5   Source  

NAME ^

Array::KeepGrepped - Like grep, only keeps the stuff it filters out

VERSION ^

version 5

SYNOPSIS ^

    use Array::KeepGrepped qw/kgrep/;

    my @numbers = 1..10;

    my ($even, @odd) = kgrep { $_ % 2 } @numbers;

    $, = ","; print @odd,@$even;    # prints "1,3,5,7,9,2,4,6,8,10"

DESCRIPTION ^

Works like the built-in Perl 'grep', but instead of just skipping over the entries that don't match, puts them instead into a seperate array that's returned (by reference) as the first item of the returned list.

Primary use for this is when you want to remove elements from an array in-place, but still be able to use what you removed.

EXAMPLES ^

    my @good = qw/good bad good evil good wicked good/;

    my $bad;

    ($bad, @good) = kgrep { $_ =~ /good/ } @good;

    say "@$bad | @good";   # bad evil wicked | good good good good

SEE ALSO ^

grep

AUTHOR ^

Dominic Humphries <dominic@oneandoneis2.com>

COPYRIGHT AND LICENSE ^

This software is copyright (c) 2013 by Dominic Humphries.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

syntax highlighting: