我正在尝试从具有如下所示结构的巨大xml中检索<value>
节点的文本。如果用户知道节点<name>
的文本,是否还要写一个通用的xpath查询?
<ReferencesServiceQualificationItem>
<ItemInvolvesProduct>
<ID>CPI000123456854</ID>
<DescribedBy>
<value>Yes</value>
<Characteristic>
<name>POTS Interconnect Match</name>
</Characteristic>
</DescribedBy>
<DescribedBy>
<value>null</value>
<Characteristic>
<name>Remediation Date</name>
</Characteristic>
</DescribedBy>
</ItemInvolvesProduct>
</ReferencesServiceQualificationItem>
答案 0 :(得分:1)
这是一个可能的XPath,假设用户知道name
,例如'POTS Interconnect Match'
:
//DescribedBy[Characteristic/name='POTS Interconnect Match']/value
基本上上面的XPath搜索DescribedBy
元素Characteristic/name
子等于"POTS Interconnect Match"
,然后返回相应的value
元素。
<强> xpathtester demo
强>
输出
<value>Yes</value>
答案 1 :(得分:0)
假设您想要前面的&#34; DescribedBy&#34;节点,您有当前节点的文本:
//DescribedBy[Characteristic/name = 'Remediation Date']/preceding-sibling::DescribedBy[1]/value