【问题标题】:How can I find nodes which have an attribute equals to one of attributes parental node?如何找到属性等于父节点属性之一的节点?
【发布时间】:2015-07-10 04:55:05
【问题描述】:

我是 XML 和 XPath 领域的新手,希望您能解决我的一些疑问。 这是 XML 文件的一小部分。

<country name="Mexico" population="95772464" area="1972550">
<city>
<name>Nezahualcoyotl</name>
<population>1255456</population>
</city>
<city>
<name>Mexico</name>
<population>9815795</population>
</city>
</country>

我必须找到与其国家名称相同的城市。 我该如何解决这个问题?谢谢大家!

【问题讨论】:

    标签: xml xpath nodes


    【解决方案1】:

    你可以试试这个方法:

    //country/city[name=../@name]
    

    上面的 xpath 返回列表的 &lt;city&gt; 节点匹配 谓词[] 中的表达式)。谓词本身比较子节点&lt;name&gt;值与父节点name属性值的相等性

    • name:获取子节点&lt;name&gt;

    • ../@name:获取父节点,然后获取其name属性

    【讨论】:

      猜你喜欢
      • 2022-07-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-29
      相关资源
      最近更新 更多