If you want to have more control over the generated data structure, try XML::Rules. In this case something like:
use strict; use XML::Rules; my $parser = XML::Rules->new( normalisespaces => 1, rules => { div => sub { if (exists $_[1]->{class}) { my $class = delete $_[1]->{class}; return '@'.$class => $_[1]; } else { return $_[0] => $_[1]; } } }, ); my $data = $parser->parse(\*DATA); use Data::Dumper; print Dumper($data); __DATA__ <div id="main"> <div class="A"> ... </div> <div class="A"> ... </div> <div class="A"> ... </div> <div class="B"> ... </div> <div class="B"> ... </div> <div class="B"> ... </div> </div>
In reply to Re: XML::Simple - Make arrays out of class attribute
by Jenda
in thread XML::Simple - Make arrays out of class attribute
by mscharrer
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |