我目前有一个程序,可以根据查找具有匹配 id 的标签来查找和编辑 HTML 文件。
我想扩展它以找到一个匹配 InnerHtml 的标签(忽略大小写和空格)
使用 Html Agility 执行此操作的好方法是什么?我想使用 Html Agility 来完成它,因为程序的其余部分正在使用它。
谢谢。
我目前有一个程序,可以根据查找具有匹配 id 的标签来查找和编辑 HTML 文件。
我想扩展它以找到一个匹配 InnerHtml 的标签(忽略大小写和空格)
使用 Html Agility 执行此操作的好方法是什么?我想使用 Html Agility 来完成它,因为程序的其余部分正在使用它。
谢谢。
在这里粗略地拍摄它,但你应该能够做这样的事情:
HtmlNodeCollection nodes = doc.DocumentNode.SelectNodes("YOUR_TAG_SELECTOR");
if (nodes != null)
{
foreach (HtmlNode node in nodes)
{
if (node.InnerHtml.ToLower().Trim() == "YOUR_MATCH")
{
//success routine
break;
}
}
}
我们已经使用正则表达式完成了这项工作。像这样的东西对我们有用:
private static List<HtmlNode> GetMatchingNodes(string xPath, string pattern, HtmlDocument htmlDocument)
{
List<HtmlNode> matchingNodes = new List<HtmlNode>();
foreach (HtmlNode node in htmlDocument.DocumentNode.SelectNodes(xPath))
{
if (Regex.IsMatch(node.InnerHtml, pattern))
{
matchingNodes.Add(node);
}
}
return matchingNodes;
}
希望这可以帮助。:)