没有 class 的类别文本后的 XPath select 文本
XPath select text after a category text without class
我使用 HtmlAgilityPack。
我想要(title1 和 title2 only in Title: part)或(number1 and number2 only in Number: part)。
<div>
<span class="dark_text">Title:</span>
<a href="linktitle1" title="title1">title1</a>,<a href="link title2" title="title2">title2</a>
</div>
//other part same xml
<div>
<span class="dark_text">Number:</span>
<a href="linknumber1" title="number1">number1</a>,<a href="linknumber2" title="number2">number2</a>
</div>
我试试这个代码:
HtmlNodeCollection summary = doc.DocumentNode.SelectNodes(".//div/a[not(@id)]");
MessageBox.Show(summary.Count.ToString());
for (int i = 0; i < summary.Count; i++)
{
MessageBox.Show(summary[i].InnerText.ToString());
}
但是消息框显示了所有这些(title1,title2,number1,number2)。我不知道只参加 1 部分类别。
您可以通过子 span
内容过滤父 div
,例如,下面应该 return title1, title2 :
//div[span='Title:']/a[not(@id)]
我使用 HtmlAgilityPack。 我想要(title1 和 title2 only in Title: part)或(number1 and number2 only in Number: part)。
<div>
<span class="dark_text">Title:</span>
<a href="linktitle1" title="title1">title1</a>,<a href="link title2" title="title2">title2</a>
</div>
//other part same xml
<div>
<span class="dark_text">Number:</span>
<a href="linknumber1" title="number1">number1</a>,<a href="linknumber2" title="number2">number2</a>
</div>
我试试这个代码:
HtmlNodeCollection summary = doc.DocumentNode.SelectNodes(".//div/a[not(@id)]");
MessageBox.Show(summary.Count.ToString());
for (int i = 0; i < summary.Count; i++)
{
MessageBox.Show(summary[i].InnerText.ToString());
}
但是消息框显示了所有这些(title1,title2,number1,number2)。我不知道只参加 1 部分类别。
您可以通过子 span
内容过滤父 div
,例如,下面应该 return title1, title2 :
//div[span='Title:']/a[not(@id)]