[Rio-pm] Consultas em array de objetos

Donato Azevedo donatoaz em gmail.com
Quarta Junho 3 07:51:51 PDT 2009


voce pode usar grep tipo...

grep BLOCK,LIST
grep EXPR, LIST

Evaluates the BLOCK or EXPR for each element of LIST (locally setting
$_ to each element) and returns the list value consisting of those
elements for which the expression evaluated to true. In scalar
context, returns the number of times the expression was true.

ou seja...

my $search_titulo = "The Catcher in The Rye";

my @filtered = grep { $_->titulo eq $search_titulo } @livros;

nao testei pois estou no trabalho...
Cheers!

2009/6/3 Gilberto Jolti <gilbertojolti em gmail.com>:
> Primeiramente, olá a todos.
>
> Tenho um array contendo 500 objetos.
>
> $livros[0] = new Livro('titulo'=>'Livro1');
> $livros[1] = new Livro('titulo'=>'Livro2');
> $livros[2] = new Livro('titulo'=>'Livro3');
> $livros[3] = new Livro('titulo'=>'Livro4');
> $livros[4] = new Livro('titulo'=>'Livro5');
> $livros[5] = new Livro('titulo'=>'Livro6');
> #...
>
> Recebi isso pronto e agora tenho que fazer diversas buscas nessa lista para
> encontrar X livro com Y titulo, etc (não existe apenas o campo 'titulo').
>
> O único jeito é um loop fazendo comparações pelo caminho até encontrar o
> valor que quero (e tratar o caso de existir mais de um, etc)?
>
> []'s
> Gilberto
>
> _______________________________________________
> Rio-pm mailing list
> Rio-pm em pm.org
> http://mail.pm.org/mailman/listinfo/rio-pm
>



-- 
Donato Azevedo


Mais detalhes sobre a lista de discussão Rio-pm