たとえば、xmlファイルがあります。
<title> hello <name> hi </name> <street> id </street> this is xml file </title>
ここで、親ノードはtitle
です。親ノード内のテキストを抽出して、内部タグを削除します。
正規表現を試してみました。しかし、タグを削除するためにいくつかのxmlベースの関数を使用するような正規表現を使用する以外の方法はありますか?注:タグ名は事前にはわかりません。
こんにちは私はこれを試しました、私は同じxmlを使用しました
use XML::Simple;
use Data::Dumper;
my $simple = XML::Simple->new();
my $data = $simple->XMLin('XMLRemoval.xml');
my %oldHash = %$data; my %newHash = ();
while ( my ($key, $innerRef) = each %oldHash )
{
$newHash{$key} = @$innerRef[1];
}
foreach $key ( keys %newHash )
{
print $newHash{$key};
}
そして、エラーが発生します: "strict refs"の間、文字列( "id")をARRAYrefとして使用できません