如何根据key1的值获取XML中对应key2的XPath表达式?
获取指定key1值对应key2的XPath表达式
要精准获取key1值为PQR的data节点下key2的内容,你可以使用以下XPath表达式:
//datas/data[key1='PQR']/key2
如果需要直接获取key2的文本值(而非节点本身),可以追加/text():
//datas/data[key1='PQR']/key2/text()
表达式说明
//datas/data:定位到所有<datas>节点下的<data>子节点[key1='PQR']:添加过滤条件,只保留子节点<key1>文本值等于PQR的<data>节点/key2:从符合条件的<data>节点中取出<key2>子节点
你之前用的//datas/data[last()]/key2仅靠节点位置(取最后一个<data>)匹配,而上述表达式基于节点内容筛选,无论目标<data>在什么位置都能准确命中。
内容的提问来源于stack exchange,提问作者Rishi
相关产品推荐
相关产品推荐

