[Cascavel-pm] XML::Parser Tree
Lorn
lorn.br em gmail.com
Quinta Junho 28 13:46:04 PDT 2007
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',
> [
> {},
> 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;
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070628/22001c53/attachment-0001.html
Mais detalhes sobre a lista de discussão Cascavel-pm