我在 Perl 中的 XML::Simple 和可为空的元素中苦苦挣扎。
所以这是我的例子-XML:
<MyXml>
<SomeNumber>123</SomeNumber>
<EmptyOne/>
<NullableElement xsi:nil="true"></NullableElement>
</MyXml>
如果我使用XMLin和SuppressEmpty => 1阅读此内容,我将为EmptyOne获得一个空字符串,但为NullableElement获得一个带有xsi:nil="true"的哈希。我的问题是,我如何告诉 XMLin 忽略 xsi:nil-Content 并只给我一个空字符串或 undef?这甚至可以使用 XML::Simple 还是我应该切换到 Lib::XML?
这里有一些代码可以查看结果:
use XML::Simple;
use Data::Dumper;
my $xmlIn = '<MyXml><SomeNumber>123</SomeNumber><EmptyOne/><NullableElement xsi:nil="true"></NullableElement></MyXml>';
my $xmlHash = XMLin($xmlIn, SuppressEmpty => '');
print Dumper($xmlHash);