您好我有一个XML文件,我想使用Perl删除它的第一行并将其替换为只有一个单词。你能让我知道如何管理吗?
例如,让'我们有一个XML文件,其中包含一些行:
<SquishReport version="2.1" xmlns="http://www.froglogic.com/XML2">
<test name="test">
.
.
.
在删除并添加所需的行后,我会:
<SquishReport>
<test name="test">
.
.
答案 0 :(得分:3)
使用XML::Twig
:
替换&#34;根元素+属性&#34;只需&#34;根元素&#34;:
#!/usr/bin/env perl
use strict;
use warnings;
use XML::Twig;
my $twig = XML::Twig -> parse ( \*DATA );
$twig -> root -> del_atts;
$twig -> set_pretty_print('indented_a');
$twig -> print;
__DATA__
<SquishReport version="2.1" xmlns="http://www.froglogic.com/XML2">
<test name="test"> </test>
</SquishReport>
打印:
<SquishReport>
<test name="test"> </test>
</SquishReport>
注意 -
$twig -> set_pretty_print('indented_a');
可以更改文件内容 - 来自XML::Twig
上的文档:
警告:此选项使文档格式正确但可能使其无效(不符合其DTD)。
因此,关闭漂亮的印刷品是一个值得关注的问题。