我有一个“糟糕的xml结构”文件:
<cars>
<car>Toyota
<country>Japan</coutry>
....
</car>
</cars>
如何使用Xpath正确获取正确的单词( Toyota )? 我试过了:
<xsl:value-of select = "cars/car/text()"/>
。
它有效,但我认为有更合适的方法。 感谢。
答案 0 :(得分:3)
使用强>:
/cars/car/text()[1]
或者如果要丢弃上面选择的文本节点中的大部分空白区域,请使用:
normalize-space(/cars/car/text()[1])
请注意,在XSLT 1.0中<xsl:value-of>
只输出select
属性中表达式选择的节点集的第一个节点的字符串值,<xsl:copy-of>
将输出所有节点集中的节点。在XSLT 2.0中,偶数<xsl:value-of>
输出节点集中的所有节点。
因此,出于可移植性,可升级性以及简单地避免错误的目的,最好指定从节点集中输出哪个节点 - 即使使用<xsl:value-of>