xpath过滤属性文本

时间:2014-09-17 13:09:39

标签: vb.net xpath

您好我有一个xml文件,如下所示

<Pods>
 <item>
    <URL>data/_data/2014/09/11/pods/10057-1837887-2965978-0.pdf</URL>
    <RunDate>11/09/2014</RunDate>
    <DateSigned>11/09/2014 09:13:49
    </DateSigned>
 </item>
 <item>
    <URL>data/_data/2014/09/11/pods/10057-0-2965978-0-scan.pdf</URL>
    <DateSigned>Not signed</DateSigned>
 </item>
</Pods>

我想获得<URL> <DateSigned>不等于&#34;未签名&#34;

的视锥

我试过了

Dim URLNode As XmlNodeList = doc.SelectNodes("//ITEM[DateSigned=Not Signed]/URL")

但这表示无效令牌我不确定我吃了什么错误 谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

您需要简单地将Not signed包装在单引号中,以使其被识别为字符串值。此外,XML区分大小写,使用正确的情况:

Dim URLNode As XmlNodeList = _
                doc.SelectNodes("//item[DateSigned='Not signed']/URL")

或者如果你真的打算<item> <DateSigned> 不是等于Not signed

Dim URLNode As XmlNodeList = _
                doc.SelectNodes("//item[DateSigned != 'Not signed']/URL")