1

input.xml の最初の要素から「親」を表示する必要があります

また、親からのIDを表示する必要があります

これが私のスクリプト Perl です: C:\lng> C:\lng\uniq.pl

残念ながら、出力には子ノードが表示されています。

 <source id="berlin"> 
   <target id="karlsruhe" method="delete"/> 
   <target id="Stuttgart4" method="delete"/>
</source>

予想される出力は次のとおりです。

<source id="berlin"> 

助けてください。

uniq.pl は次のとおりです。

#!/usr/bin/perl -w
use warnings;
use XML::Twig;
my $t= XML::Twig->new;
my $v= XML::Twig::Elt->new;

$t-> parsefile ('input.xml');
$v= $t->first_elt('[@method]');

$w= $v->parent;
$w->print;

入力ファイル: input.xml

<Germany>
 <airport id1="1">
  <plane id="3">
   <source id="berlin">
     <target id="karlsruhe" method="delete"/>
     <target id="Stuttgart4" method="delete"/>
   </source>
  </plane>
 </airport>
</Germany>
4

1 に答える 1

5

要素を呼び出すprintと、すべての子とその子孫を含む、開始タグから終了タグまでの要素全体が出力されます。

start_tagメソッドを使用して、開始タグだけが必要です。

print $w->start_tag;
于 2012-06-17T12:32:58.107 に答える