リモートでホストされている xml ファイルをローカル テキスト ファイルに出力するデータ ダンパーがあり、次の情報を取得しています。
$VAR1 = {
'resource' => {
'005cd410-41d6-4e3a-a55f-c38732b73a24.xml' => {
'standard' => 'DITA',
'area' => 'holding',
'id' => 'Comp_UKCLRONLINE_UKCLR_2000UKCLR0278',
},
'003c2a5e-4af3-4e70-bf8b-382d0b4edda1.xml' => {
'standard' => 'DITA',
'area' => 'holding',
'id' => 'Comp_UKCLRONLINE_UKCLR_2000UKCLR0278',
},
など。私がやりたいことは、各リソースで 1 つのキーと値だけを使用することです。つまり、ID を選択して、そこから URL を作成します。
私は通常、ファイルで正規表現を使用し、そこから必要な情報を取得しますが、より簡単で適切な方法が必要だと考えていますが、検索で使用する適切な用語が思いつかないため、見つかりません.
この出力をファイルに書き込むために使用しているコードは次のとおりです。
#-----------------------------------------------
sub request_url {
#-----------------------------------------------
my $useragent = LWP::UserAgent->new;
my $request = HTTP::Request->new( GET => "http://digitalessence.net/resource.xml" );
$resource = $useragent->request( $request );
}
#-----------------------------------------------
sub file_write {
#-----------------------------------------------
open OUT, ">$OUT" or Log_message ("\n$DATE - $TIME - Could not create filelist.doc \t");
Log_message ("\n$DATE - $TIME - Opened the output file");
print OUT Dumper (XML::Simple->new()->XMLin( $resource->content ));
Log_message ("\n$DATE - $TIME - Written the output file");
}
ありがとう