Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想将所有节点的名称及其值插入 xml。我遇到的问题是第一个子节点之一没有分配任何值,但它确实有具有值的子节点。如果我只使用通配符,那么它只会选择该级别上的所有子节点,包括没有分配值的子节点。有没有办法使用通配符来只选择本身没有子节点的子节点?
谓词[not(node())]对于所有没有子节点的节点都是正确的,但包括文本和注释节点,也许你想要[not(*)]的是那些没有元素子节点的节点。
[not(node())]
[not(*)]
<xsl:for-each select="//*[not(*)]"> <xsl:value-of select="concat(' ',name(),': ',."/> </xsl:for-each>
因此迭代所有没有子元素的叶子元素并打印元素名称和内容