我有这样的XML
<extra>
<name>format-xml</name>
<value>excel.xls</value>
</extra>
<extra>
<name>format-java</name>
<value>hello.java</value>
</extra>
<extra>
<name>Date</name>
<value>someday</value>
</extra>
<extra>
<name>version</name>
<value>2</value>
</extra>
我想使用XSLT来获取泡沫 - *名称
我尝试启动,但它不起作用
<xsl:for-each select="extra[starts-with(name(),'format-')]">
Format name: <xsl:apply-templates select="name" />
Format value: <xsl:apply-templates select="value" />
</xsl:for-each>
答案 0 :(得分:9)
name()
将为您提供上下文节点的名称(在您的示例中为<extra>
)。您正尝试匹配<name>
元素的值。
将您的选择语句调整为:
extra[starts-with(name,'format-')]