有可能吗?
XML:
<node name="unknown">
<leaf ref="sometext/WHATIWANT/sometext"/>
</node>
<node name="unknown">
<leaf ref="sometext/sometext/sometext"/>
</node>
<node name="unknown">
<leaf ref="sometext/sometext/sometext"/>
</node>
WHATIWANT
是我知道并希望在我的搜索中匹配的内容。
我应该创建一个像 <xsl:variable name="whatiwant" select="contains(node(), '/WHATIWANT/')"/> <!-- unique -->
这样的变量在进一步的表达中使用它。
显然它没有用。
我建议 select="contains(node(), '/WHATIWANT/')
不检查 xml 叶中的表达式。
关于如何使用已知关键字检查 xml 表达式的任何想法? 或者选择不同的方式?
最佳答案
字面意思是叶
元素
这个 XPath,
//leaf[contains(@ref, '/WHATIWANT/')]
将选择所有 leaf
元素,其 @ref
属性值包含子字符串 /WHATIWANT/
。
仅叶子元素
这个 XPath,
//*[contains(@ref, '/WHATIWANT/') and not(*)]
将选择所有 leaf 元素,其 @ref
属性值包含子字符串 /WHATIWANT/
。
所有元素
这个 XPath,
//*[contains(@ref, '/WHATIWANT/')]
将选择所有元素,不考虑名称和层次位置,其@ref
属性值包含子字符串/WHATIWANT/
。
关于xml - 通过匹配关键字的未知 XML 叶子的 XPath 表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45983035/