我需要匹配所有这些开始标记:
<p>
<a href="foo">
Run Code Online (Sandbox Code Playgroud)
但不是这些:
<br />
<hr class="foo" />
Run Code Online (Sandbox Code Playgroud)
我想出了这个,并希望确保我做对了.我只抓住了a-z.
<([a-z]+) *[^/]*?>
Run Code Online (Sandbox Code Playgroud)
我相信它说:
/,然后我有这个权利吗?更重要的是,你怎么看?
我正在攻击html敏捷包并且无法找到正确的方法来解决这个问题.
例如:
var findclasses = _doc.DocumentNode.Descendants("div").Where(d => d.Attributes.Contains("class"));
Run Code Online (Sandbox Code Playgroud)
但是,显然你可以添加更多的类然后div,所以我尝试了..
var allLinksWithDivAndClass = _doc.DocumentNode.SelectNodes("//*[@class=\"float\"]");
Run Code Online (Sandbox Code Playgroud)
但是这并没有处理你添加多个类的情况,而"float"只是其中之一,就像这样.
class="className float anotherclassName"
Run Code Online (Sandbox Code Playgroud)
有没有办法处理所有这些?我基本上想要选择所有具有class =且包含float的节点.
**答案已记录在我的博客上,并附有完整说明:Html Agility Pack按类获取所有元素