如何通过XPath选择第一个和最后一个元素?

时间:2016-04-05 01:09:33

标签: xml xslt xpath

这是一个示例XML,我试图弄清楚如何选择第一个节点值并退出循环。如果我使用以下XSLT标记

<xsl:value-of select="fruits/fruit"/> 

它返回“苹果芒果香蕉”但预期结果应该是“苹果”

<fruits>
  <fruit>apple</fruit>
  <fruit>mango</fruit>
  <fruit>banana</fruit>
</fruits>

我还想在不知道先验存在多少fruit的情况下选择最后一个fruit。所以,对于上面的例子,我想在不知道有3个fruit元素的情况下返回“banana”。

1 个答案:

答案 0 :(得分:7)

第一

您可以通过fruit选择第一个fruits(根fruit[1]元素)的值:

<xsl:value-of select="(/fruits/fruit)[1]"/> 

将按要求返回"apple"

最后

您可以通过fruit选择上一个fruit[last()]的值:

<xsl:value-of select="(/fruits/fruit)[last()]"/> 

将根据要求返回"banana",而不知道先验存在多少果实。