选择所有以给定字符串结尾的元素

时间:2018-09-28 20:29:19

标签: xpath

是否可以选择以给定字符串结尾的xml树元素?不是包含以字符串结尾的属性的元素,而是元素本身?

2 个答案:

答案 0 :(得分:1)

如我的评论中所述,您可以使用XPath-2.0函数ends-with来解决此问题。它的签名是

  

结尾为
  fn:ends-with($ arg1作为xs:string ?, $ arg2作为xs:string?)as xs:boolean
  fn:ends-with($ arg1 as xs:string ?,
  $ arg2 as xs:string ?,
  $ collat​​ion as xs:string)as xs:boolean

     

摘要:
  返回一个xs:boolean,指示$ arg1的值是否以一系列排序规则单元结束,该排序规则单元根据使用的排序规则提供与$ arg2排序规则单元的最小匹配。

所以您可以使用以下表达式

  

选择以给定字符串结尾的xml树元素

文档范围

//*[ends-with(.,'given string')]

要在Xpath-1.0中实现此目的,请参阅this SO answer

答案 1 :(得分:0)

例如,要选择所有以“ es”结尾的元素,您可以搜索名称中包含子字符串“ es”的所有元素,这些元素从名称的长度减去负1开始:

//*[substring(name(),string-length(name())-1,2) = "es"]
相关问题