如何测试多个兄弟节点以查看它们是否与变量匹配?

时间:2013-06-12 18:46:54

标签: xml xslt xpath xslt-1.0

我需要针对目录检查变量,以查看这些兄弟节点中是否有任何属性等于变量。我知道'='和'包含'不适用于通配符所以我在考虑使用for-each和choose,但我不知道如何创建某种变量或标记,告诉我是否有匹配与否。

1 个答案:

答案 0 :(得分:0)

使用带contains函数的谓词来检查是否存在。例如:

<file>photo</file>
<path name="local">desktop</path>

在这种情况下,使用带有星号的following-sibling轴检查具有属性节点的file节点的所有兄弟节点,然后使用谓词检查字符串{{1的存在性在节点值集合中:

local

变量只会替换字符串:

//file/following-sibling::*/@*[contains(../@*, 'local')]"

<强>参考