[Cascavel-pm] Res: XML::Parser Tree
Gabriel Vieira
gabriel.vieira em gmail.com
Quinta Junho 28 17:40:43 PDT 2007
Ele lhe mostra o conteúdo de $xml, no caso, a sua estrutura cuja
utilização dele (Data::Dumper) é apenas para que você possa
visualizá-la. Para acessar os dados, você pode fazer como no exemplo
enviado $xml[0], ... :)
On 6/28/07, Daniel (r) Antunes <danielrantunes em yahoo.com.br> wrote:
>
>
> Opa, valeu pela dica... Eu sempre uso o strict e o -w... Neste exemplo
> eu tirei para ir tentando na força bruta, hehehehe...
> Bom, o Data::Dumper somente me mostra o conteúdo correto ? Ou eu consigo
> navegar pelo resultado ?
> Obrigado novamente...
> Daniel (r) Antunes
> profissional de informática
> msn daniel.legend em terra.com.br
> mobile + 55 11 8965 2999
> gnu/linux user #238553
>
>
>
> ----- Mensagem original ----
> De: Lorn <lorn.br em gmail.com>
> Para: Cascavel Perl Mongers <cascavel-pm em pm.org>
> Enviadas: Quinta-feira, 28 de Junho de 2007 17:46:04
> Assunto: Re: [Cascavel-pm] XML::Parser Tree
>
> E não se esqueça:
>
>
> use strict;
> use warnings;
>
>
>
>
> On 6/28/07, Gabriel Vieira <gabriel.vieira em gmail.com > wrote:
> > Opa Daniel!
> >
> > Faça uso do Data::Dumper :)
> >
> >
> ------------------------------8<---------------------------
> ---
> > use XML::Parser;
> > use Data::Dumper;
> >
> > my $parser=new XML::Parser;
> > my $p=new XML::Parser(Style => 'Tree');
> > my $xml=$p->parse('<inquiry>'
> > .'<city>2</city>'
> >
> .'<region>CENTER</region>'
> > .'<childages>'
> >
> .'<childage>2</childage>'
> >
> .'<childage>11</childage>'
> > .'</childages>'
> > .'</inquiry>');
> >
> >
> > print Dumper($xml);
> >
> ------------------------------>8------------------------------
> >
> > A saída:
> >
> ------------------------------8<------------------------------
> > $VAR1 = [
> > 'inquiry',
> > [
> > {},
> > 'city',
> > [
> > {},
> > 0,
> > '2'
> > ],
> > 'region',
> > [
> > {},
> > &nbs p; 0,
> > 'CENTER'
> > ],
> > 'childages',
> > [
> > {},
> > 'childage',
> > [
> > {},
> > 0,
> > '2'
> > ],
> > 'childage',
> > [
> > {},
> > 0,
> > '11'
> > ]
> > ]
> > ]
> > ];
> >
> ------------------------------>8------------------------------
> >
> > Abraços,
> >
> >
> > On 6/28/07, Daniel (r) Antunes < danielrantunes em yahoo.com.br> wrote:
> > >
> > > Olá amigos da lista,
> > > Estou apanhando com uma bobeirinha e acredito que os amigos possam
> me
> > > ajudar.
> > > Já fiz parsers usando Handlers para grandes documentos e conheço bem
> o
> > > funcionamento. Agora estou tentando criar um parser usando a opção
> "Tree",
> > > nunca tinha utilizado este método e apesar da simplicidade exposta na
> "man
> > > page" estou apanhando.
> > > Segue um script que fiz para testar o funcionamento :
> > >
> > > #!/usr/bin/perl
> > > use XML::Parser;
> > > my $parser=new XML::Parser;
> > > my $p=new XML::Parser(Style => 'Tree');
> > > my $xml=$p->parse('<inquiry>'
> > >
> .'<city>2</city>'
> > >
> .'<region>CENTER</region>'
> > > .'<childages>'
> > >
> .'<childage>2</childage>'
> > >
> .'<childage>11</childage>'
> > > .'</childages>'
> > > .'</inquiry>');
> > > print " 1º\t",$xml,"\n\n";
> > > print " 2º\t",$$xml[0],"\n\n";
> > > print " 3º\t",$$xml[1],"\n\n";
> > > print " 4º\t",$$xml[1][1],"\n\n";
> > > print " 5º\t",$$xml[1][2],"\n\n";
> > > print " 6º\t",$$xml[1][3],"\n\n";
> > > print " 7º\t",$$xml[1][4],"\n\n";
> > > print " 8º\t",$$xml[1][5],"\n\n";
> > > print " 9º\t",$$xml[1][6],"\n\n";
> > >
> > > O resultado no console é o seguinte :
> > >
> > > 1º ARRAY(0x815a0e4)
> > >
> > > 2º inquiry
> > >
> > > 3º ARRAY(0x815a180)
> > >
> > > 4º city
> > >
> > > 5º ARRAY(0x8220f90)
> > >
> > > 6º region
> > >
> > > 7º ARRAY(0x8220f30)
> > >
> > > 8º childages
> > >
> > > 9º ARRAY(0x82130f4)
> > >
> > > 10º
> > >
> > > 11º
> > >
> > > 12º
> > >
> > > Minha dúvida é : Como navegar pelos elementos. :(
> > > Muitíssimo obrigado galera.
> > > Abraço.
> > >
> > > Daniel (r) Antunes
> > > profissional de informática
> > > msn daniel.legend em terra.com.br
> > > mobile + 55 11 8965 2999
> > > gnu/linux user #238553
> > >
> > >
> > > ________________________________
> > > Novo Yahoo! Cadê? - Experimente uma nova busca.
> >
> > > _______________________________________________
> > > Cascavel-pm mailing list
> > > Cascavel-pm em pm.org
> > > http://mail.pm.org/mailman/listinfo/cascavel-pm
> > >
> >
> >
> >
> > --
> > Gabriel Vieira
> > _______________________________________________
> > Cascavel-pm mailing list
> > Cascavel-pm em pm.org
> > http://mail.pm.org/mailman/listinfo/cascavel-pm
> >
>
>
>
> --
> Lindolfo "Lorn" Rodrigues
> - www.slackwarezine.com.br
> - http://lornlab.org
> - http://sao-paulo.pm.org
> use Catalyst;
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
>
> ________________________________
> Novo Yahoo! Cadê? - Experimente uma nova busca.
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
>
--
Gabriel Vieira
Mais detalhes sobre a lista de discussão Cascavel-pm