[SP-pm] grep e map

Stanislaw Pusep creaktive at gmail.com
Sun May 29 13:18:59 PDT 2011


Ambos grep e map aplicam o código referenciado no 1-o parâmetro em cada
elemento da lista dos demais parâmetros, e retornam uma nova lista.
Para grep, a nova lista será formada por aqueles elementos da lista original
que fizerem o código retornar valor não-falso.
Para map, a nova lista será aquilo que o código retornar.
Exemplo:

my @array = qw(o rato roeu a roupa do rei de roma);

my @grep = grep { $_ =~ /a$/ } @array;
# o mesmo que:
# @grep = qw(a roupa roma);

# o mesmo que:
my $i = 0;
my %map = map { ($_, ++$i) } @grep;
# $map{a} = 1; $map{roupa} = 2; $map{roma} = 3;

ABS()



2011/5/29 "Flávio R. Lopes" <flavio.lopes em links.inf.br>

>  Olá Renato.
> Cara, desculpe minha lerdeza, mas fiquei na mesma.
>
>
> On 29-05-2011 16:56, Renato Santos wrote:
>
> Oo
>
> Grep retorna uma nova array do com os elementos que vc retornou true.
>
> Mapa gera uma nova array com os próprios quevalores que vc retornou.
>
> Bom, isso eh o q acho, não testei!
>
> @renato_cron
> Em 29/05/2011 16:54, Flávio R. Lopes <flavio.lopes em links.inf.br> escreveu:
> > Boa tarde pessoal.
> > Ainda não ficou claro para mim as diferenças entre map e grep.
> > Andei lendo uma coisas por aí (inclusive em Perldoc), mas mesmo assim
> > não consegui pegar os conceitos de forma clara.
> >
> > Alguém poderia me dar alguns exemplos (ou alguma documentação ou link)
> > de quando usar um e outro?
> >
> > Abraço,
> > Flávio
> > =begin disclaimer
> > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
> > SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
> > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
> > =end disclaimer
>
>
> =begin disclaimer
>    Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>  SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> <http://mail.pm.org/mailman/listinfo/saopaulo-pm>
> =end disclaimer
>
>
>
>
> =begin disclaimer
>   Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>  SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
> =end disclaimer
>
>
-------------- Pr�xima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20110529/2f238390/attachment-0003.html>


More information about the SaoPaulo-pm mailing list