xslt - 在 XSLT/XPath 中,如何获取与特定名称不匹配的第一个属性?

标签 xslt xpath

我有这段 XSLT 代码:

<xsl:variable name="key" select="@*[1]"/>

但我需要它实际将 key 设置为第一个没有特殊名称的属性(如果存在)。因此,这两个节点将具有相同的key,并且special_attr(如果存在)将被忽略。

<MyNode var="1" />
<MyNode special_attr="foo" var="1" />

获取第一个名称不是 special_attr 的属性值的正确选择语法是什么?

最佳答案

<xsl:variable name="key" select="@*[not(name() = 'special_attr')][1]"/>

关于xslt - 在 XSLT/XPath 中,如何获取与特定名称不匹配的第一个属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3197085/

相关文章:

java - 动态 xml 到 mongoDB

html - 将 css 链接添加到我无法使用 XSLT 修改的 xhtml 文件?

xslt - 如何在 umbraco 中调试 xslt

xslt - 使用 XSLT 查找父节点位置

Python lxml XPath : preceding keyword does not give expected result

xml - 通过 xslt 更改 XML 属性的值

jquery - XSLT处理器: operation unsecure?

c# - 如何通过非null属性和ID查找元素?

html - 多个标签的相同 XPath 属性测试

html - 用于从此 HTML 中提取地址的 XPath 表达式