0

我目前有一个程序,可以根据查找具有匹配 id 的标签来查找和编辑 HTML 文件。

我想扩展它以找到一个匹配 InnerHtml 的标签(忽略大小写和空格)

使用 Html Agility 执行此操作的好方法是什么?我想使用 Html Agility 来完成它,因为程序的其余部分正在使用它。

谢谢。

4

2 回答 2

1

在这里粗略地拍摄它,但你应该能够做这样的事情:

            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;
                    }
                }
            }
于 2009-03-03T21:34:17.793 回答
1

我们已经使用正则表达式完成了这项工作。像这样的东西对我们有用:

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;
}

希望这可以帮助。:)

于 2009-03-03T21:44:23.357 回答