我正在使用HtmlAgilityPack
,我有以下情况:
<table class='table-main odds '>
<tbody>
<tr>..</tr>
<tr>..</tr>
<tr>..</tr>
<tr></tr>
<tr></tr>
</tbody>
</table>
你可以看到里面只有三个tr
有内容,所以我希望在最终结果中应该只有前三个tr
。实际上我的代码返回所有tr
:
HtmlNode oddsTable = doc.DocumentNode
.SelectSingleNode("//table[starts-with(@class, 'table-main')]");
HtmlNodeCollection rows = oddsTable.SelectNodes("tbody//tr");
如何使用xpath
实现这一目标?
感谢您的帮助和解释。
取决于你的内容是什么意思:
//tr[node()]
//tr[*]
//tr[text()]
//tr[normalize-space()]