如何使用“包含”来获取唯一节点

时间:2016-07-14 06:28:00

标签: c# xml xpath

尝试检索父节点的属性值。

问题:如何通过仅使用相等搜索匹配所有子文本而不是包含搜索

来获取父节点

XML结构:

 <Elementstart>
   <Cardstart>
      <Simulate Number="1">
         <One>4</One>
         <Two>2</Two>
         <Three>11</Three>
      </Simulate>
      <Simulate Number="5">
         <One>44</One>
         <Two>22</Two>
         <Three>111</Three>
      </Simulate>
   </Cardstart>
 </Elementstart>

1)我需要通过查询子元素来获取父元素 使用以下XPATH

 //Simulate[contains(One, '4') and contains(Two, '2') and contains(Three,'1')]

我得到了父<Simulate Number="1"><Simulate Number="5"> 但是我只需要获得<Simulate Number="1">,因为我只用一位数来查询2.有没有办法只得到第一个?

另一个问题是如何将equaltext()=''and条件一起使用?

1 个答案:

答案 0 :(得分:0)

您可以使用以下XPath,它将通过匹配三个子元素中每个子元素的精确值来返回Simulate

//Simulate[One='4' and Two='2' and Three='11']

结果将是<Simulate Number="1">元素。