xml doc包含“section”元素,而这些元素又包含“tag”元素。 xpath需要检查节是否包含名为“SALE_FIN_CONCSSN”的标记。如果是,则标记不得具有值“列表”。如果每个部分都包含SALE_FIN_CONCSSN标记,则很容易检查该值,但情况并非如此。一个部分可能包含一个SALE_FIN_CONCSSN标记,该标记具有不同的值或根本没有SALE_FIN_CONCSSN标记。这是我尝试过的一件事,但它没有过滤出SALE_FIN_CONCSSN tag ='Listing'的部分。
xpath = "Report/data/section[" +
"@type='salescomp'" +
" and (tag[@name!='SALE_FIN_CONCSSN'] or tag[@name='SALE_FIN_CONCSSN']/text()!='Listing')" +
" and tag[@name='GS_DATE_TIME_O_SALE.1']/text()!='Active'" +
"]/tag[@name='GS_GROSS_ADJ_PERCENT.1']";
XmlNodeList percents = xDoc.SelectNodes(xpath);
答案 0 :(得分:0)
这个怎么样:
//section[@type='salescomp' and ((tag[@name='SALE_FIN_CONCSSN' and text()!='Listing']) or tag[@name!='SALE_FIN_CONCSSN'])]
我还没有测试过。你能把这个页面的链接?