C#使用HtmlAgilityPack解析HTML结构

using System;
using HtmlAgilityPack;

class Program
{
    static void Main()
    {
        string html = "<td>Value1</td><td>Value2</td><td>Value3</td>";

        // 使用 HtmlAgilityPack 解析 HTML
        HtmlDocument doc = new HtmlDocument();
        doc.LoadHtml(html);

        // 获取所有 <td> 元素
        HtmlNodeCollection tdNodes = doc.DocumentNode.SelectNodes("//td");

//获取带有 align="left" 属性的 <td> 元素,可以使用 XPath 表达式来选择具有指定属性的元素。

// 获取所有带有 align="left" 属性的 <td> 元素 HtmlNodeCollection tdNodes = doc.DocumentNode.SelectNodes("//td[@align='left']");

// 获取所有带有 align="left" 属性且包含非空文本的 <td> 元素 HtmlNodeCollection tdNodes = //doc.DocumentNode.SelectNodes("//td[@align='left' and normalize-space(text())]");

// 获取指定表格下带有 align="left" 属性且包含非空文本的 <td> 元素

//HtmlNodeCollection tdNodes = doc.DocumentNode.SelectNodes("//table[@cellspacing='2' and @cellpadding='2' and @border='0' and @style='border-style:None;font-size:10pt;width:100%;']//td[@align='left' and normalize-space(text())]");

        if (tdNodes != null)
        {
            // 输出每个 <td> 中的内容
            foreach (HtmlNode tdNode in tdNodes)
            {
                string extractedValue = tdNode.InnerText;
                Console.WriteLine("Extracted Value: " + extractedValue);
            }
        }
    }
}