加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl 解析xml

发布时间:2020-12-15 20:59:02 所属栏目:大数据 来源:网络整理
导读:?example: 1.xml ?xml version="1.0"? results fid="4769" branchedream2.1-feature-interactive-timescape-widget/branch branchedream2.1-feature-interactive-timescape-widget/branch /results ? #!/usr/bin/perl -w use XML::Simple; use Data::Dumper;

?example: 1.xml

<?xml version="1.0"?>

<results fid="4769">

<branch>edream2.1-feature-interactive-timescape-widget</branch>

<branch>edream2.1-feature-interactive-timescape-widget</branch>

</results>

?
#!/usr/bin/perl -w
use XML::Simple;
use Data::Dumper;
my $xml = new XML::Simple;
my $data = $xml->XMLin("1.xml");
?
print Dumper($data);
?
if(exists $data->{branch})
{
? ? ? ? my @array = ref($data->{branch}) ? @{$data->{branch}} : ($data->{branch});
? ? ? ? print @array;
}
?
#-------------------------------------------------------------------------------------
?
?#!/usr/bin/perl -w
?
use XML::Simple;
use Data::Dumper;
my $xml=XML::Simple->new(ForceArray => 1);
?
my $data=$xml->XMLin("1.xml");
?
?
print Dumper($data);
while(my($a,$b)=each %$data)
?{
? ?if( ref($b))
? ? {
? ? ? ?foreach my $i(@$b)
? ? ? ? {
? ? ? ? ? print "$at$in";
? ? ? ? }
? ? }
? else{
? ?print "$at$bn";
? }
?}
?
PS:有时候xml结构很复杂,所以不一定就是简单的hash,shuzu格式。。所以需要使用ref来判断返回的值是array,还是hash,还是空白
?
查看: ref语法
perldoc -f ref
?
? ? ? ? ? ? ? ? ? ?SCALAR
? ? ? ? ? ? ? ? ? ?ARRAY
? ? ? ? ? ? ? ? ? ?HASH
? ? ? ? ? ? ? ? ? ?CODE
? ? ? ? ? ? ? ? ? ?REF
? ? ? ? ? ? ? ? ? ?GLOB
? ? ? ? ? ? ? ? ? ?LVALUE
? ? ? ? ? ? ? ? ? ?FORMAT
? ? ? ? ? ? ? ? ? ?IO
? ? ? ? ? ? ? ? ? ?VSTRING
? ? ? ? ? ? ? ? ? ?Regexp

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读