html agility pack - 选择特定节点

时间:2012-07-02 11:39:02

标签: c# html-agility-pack

我需要选择具有特定值的节点:

<td class='formlabel'>Name:</td>

所以我有这样的事情:

HtmlNode selectedNote = html.DocumentNode.SelectSingleNode("//td[@class='formlabel'][starts-with(., 'Name:')]");

这很有效。但问题是这是一个带开头的选择 - 例如,如果我有这样的代码:

<td class='formlabel'>Name: some text</td>

它还将选择节点。我需要的东西只有在存在时才会选择节点

<td class='formlabel'>Name:</td>

因此它将选择只有innerText的节点等于“Name:”

嗯......这可能吗?非常感谢你。

1 个答案:

答案 0 :(得分:1)

我相信你想要:

HtmlNode selectedNote = html.DocumentNode.SelectSingleNode("//td[@class='formlabel'][text()='Name:']");

或者

HtmlNode selectedNote = html.DocumentNode.SelectSingleNode("//td[@class='formlabel'][.='Name:']");