我有一些有时看起来像这样的 XML:
<object>
<item>
<name>Item Name</name>
</item>
</object>
然后有时会缺少 Name 元素并有另一个名称:
<object>
<item>
<name/>
<altname>Item Name 2</altname>
</item>
</object>
我需要的背后的逻辑是:
如果有一个值,请使用它。如果没有,请使用 .
我尝试调整我在这里找到的内容:
XPath:默认为“节点 A”,如果“节点 B”不为空,则选择“节点 B”
但无济于事......有什么想法吗?
使用 XPath-2.0 及更高版本,您可以使用
if (item/name !='') then item/name else item/altname
仅使用 XPath-1.0 会有点棘手,但这会起作用:
item/name[. !=''] | item/altname[../name ='']
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句