SelectNodes 特定于一个节点

SelectNodes specific from a node

我正在尝试解析此字段,但无法正常工作

HtmlAgilityPack.HtmlNode link = 
    doc.DocumentNode.SelectSingleNode("//ul[@class != 'menu']/li/ul/li/a[@href]");

我只想得到第一个 <ul> 没有 Class="menu" 的节点。

没看你的HTML不清楚,但是"<ul>节点没有Class="menu""可以翻译进入 XPath 如下:

//ul[not(@class = 'menu')]

然后,通过使用 SelectSingleNode() 执行 XPath,它应该 return 只有与 XPath 参数匹配的第一个元素,如您所愿。