C# Xpath在链接节点之间获取单独的文本
我目前正在从内部C# Xpath在链接节点之间获取单独的文本,c#,html,asp.net,xpath,html-agility-pack,C#,Html,Asp.net,Xpath,Html Agility Pack,我目前正在从内部 现在它又回到了我的脑海中:电池(1)、制动器(2)、电缆/线路(1),这显然是所有的内部文本。我想知道的是如何将这两个位分开,以便将它们分别存储在一个列表中供以后使用。大致如下:电池、1、制动器、2、电缆/线路、1,当它们返回给我时,我可以将它们放入列表中 标记之间的文本是将带您访问的页面上的结果数。我可以在得到一行文本后解析整个字符串,但我觉得好像有一种方法可以使用XPath自动完成这项工作,并一次返回一个片段供我处理和存储。我对XPath非常陌生,自己已经尝试解
现在它又回到了我的脑海中:电池(1)、制动器(2)、电缆/线路(1)
,这显然是所有的内部文本。我想知道的是如何将这两个位分开,以便将它们分别存储在一个列表中供以后使用。大致如下:电池、1、制动器、2、电缆/线路、1
,当它们返回给我时,我可以将它们放入列表中
标记之间的文本是
将带您访问的页面上的结果数。我可以在得到一行文本后解析整个字符串,但我觉得好像有一种方法可以使用XPath自动完成这项工作,并一次返回一个片段供我处理和存储。我对XPath非常陌生,自己已经尝试解决这个问题好几天了,但都没有结果。任何帮助都将不胜感激 将XPath表达式更改为//div[@class='acTrigger']/a//text()[normalize-space()]
单独的文本节点。谢谢,这非常有效。我还在努力学习XPath语法,这有点奇怪。
foreach (HtmlNode node in html.DocumentNode.SelectNodes("//div[@class='acTrigger']/a"))
{
lblTest1.Text = lblTest1.Text + ", " + node.InnerText.ToString();
}
<li>
<div class="acTrigger">
<a href="/16014988/d/" onclick="return queueRefinementAnalytics('Category','Battery')">
Battery <em> (1)</em>
</a>
</div>
</li>
<li>
<div class="acTrigger">
<a href="/15568540/d/" onclick="return queueRefinementAnalytics('Category','Brakes')">
Brakes <em> (2)</em>
</a>
</div>
</li>
<li>
<div class="acTrigger">
<a href="/11436914/d/1979-honda-ct90-cables-lines" onclick="return queueRefinementAnalytics('Category','Cables/Lines')">
Cables/Lines <em> (1)</em>
</a>
</div>
</li>