我只想拉"图像"来自xml但我收到错误,因为前几个人不会包含" image"。
<?xml version='1.0' encoding='utf-8'?>
<document>
<job name="Job1">
<type>
<description>
</description>
</type>
</job>
<job name="Job2">
<type>
<description>
</description>
</type>
</job>
<job name="Job3">
<type>
<description>
<image>
<png></png>
</image>
</description>
</type>
</job>
</document>
如何跳过前两个并匹配第三个图片标签?
xmllint --xpath "//*[local-name()='document']/job/type/description/image/png/text()" file
答案 0 :(得分:3)
如果我只修改输入文件的一行,则更改
<png></png>
到
<png>Some text goes here</png>
...然后你的代码完全按照已经编写的方式工作。因此,错误与前几个没有description
的{{1}}没有任何关系。
请注意,由于您没有定义任何名称空间,因此您根本不需要使用png
。
local-name()
......同样有效。