xml - 用于查找标签名称包含 'Name' 的元素的 XPath 表达式

标签 xml xpath contains

我是 XPath 的新手。

我正在寻找一种方法来获取标签名称包含特定字符串的所有元素。

例如,如果我有如下所示的 XML,我想获取其标签名称包含单词“Name”的所有元素。即,我想获取以下元素:<SquareName> , <RectangleName> , 和 <ParallelogramName> .

我尝试了 name() 的一些组合, contains()等,但它没有用。 请提出建议。

<Objects>
 <Four-Sided>
   <Square>
      <SquareName>ABCD</SquareName>
      <Length>4</Length>
      <Height>4</Height>
      <Colour>Blue</Colour>
   </Square>
   <Rectangle>
      <RectangleName>EFGH</RectangleName>
      <Length>10</Length>
      <Height>6</Height>
      <Colour>Brown</Colour>
   </Rectangle>
   <Parallelogram>
      <ParallelogramName>WXYZ</ParallelogramName>
      <Length>12</Length>
      <Height>4</Height>
      <Colour>Black</Colour>
   </Parallelogram>
</Four-Sided>
</Objects>

最佳答案

对于 XPath 解决方案:

//*[contains(local-name(), 'Name')]

关于xml - 用于查找标签名称包含 'Name' 的元素的 XPath 表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14931499/

相关文章:

java - CXF,wsdl2java。自定义端口名称

java - Android模态对话框堆叠

php - DOM XPath 查询帮助

PHP解析xml问题与获取值

java - 我应该如何为 LinkedList 定义 contains() 命令?

xml - 使用 vCloud Director API 创建独立虚拟机 "createVm"

xml - RSS 浏览器检测

c# - 从 XML 中提取一小部分数据

cakephp - 如何减少 Cake 3.x 中 _joinData 的字段数量?

C# 枚举包含值