XPath 2.0返回元素节点中的第一个字符串

时间:2018-02-06 11:55:34

标签: xpath xpath-2.0

ich想要回到曼谷,仅此而已,我怎样才能选择第一个字符串?必须有一个功能或类似的东西?

元素节点如下所示:

<Route>Bangkok 05.00, Puket 06.30
      <Ziel>Melbourne an 21.30</Ziel> 
</Route> 

提前致谢!

2 个答案:

答案 0 :(得分:1)

您可以在XPath 2.0中使用tokenize()按空格分割文本并仅返回第一个tokenize结果:

//Route/tokenize(., ' ')[1]

或者,如果目标文本始终位于Route的第一个文本节点子项中,那么以下内容应该稍微更有效:

//Route/tokenize(text(), ' ')[1]

<强> demo

根据您的尝试查询进行调整:

for $a in //Ereignis/Abflug 
return ($a/Flugnr, $a/Route/tokenize(text(), ' ')[1])

答案 1 :(得分:0)

使用

可以选择第一个text()节点
Route/text()[1]

只选择曼谷&#39;你可以像这样使用substring-before XPath 1.0函数

substring-before(Route/text()[1],' ')
相关问题