C# 如何使用HTML Agility pack解析HTML

C# 如何使用HTML Agility pack解析HTML,c#,html,regex,C#,Html,Regex,我正在使用regex解析HTML,但有文章说HTMLAgilityPack更容易。对我来说,最大的问题是如何解析这个示例(twitter)的HTML: 这是HTML代码: <p class="js-tweet-text tweet-text"> What an awesome day! Adventure nanaman kahapon <a href="http" data-query-source="hashtag_click" class="twitter-hashtag

我正在使用regex解析HTML,但有文章说HTMLAgilityPack更容易。对我来说,最大的问题是如何解析这个示例(twitter)的HTML:

这是HTML代码:

<p class="js-tweet-text tweet-text"> What an awesome day! Adventure nanaman kahapon <a href="http" data-query-source="hashtag_click" class="twitter-hashtag pretty-link js-nav" dir="ltr"><s>#</s><b><strong>ondoy</strong></b></a> <a href="https://twitter.com/search?q=%23eurotel&src=hash" data-query-source="hashtag_click" class="twitter-hashtag pretty-link js-nav" dir="ltr"><s>#</s><b>eurotel</b></a> <a href="https://twitter.com/search?q=%23retail&src=hash" data-query-source="hashtag_click" class="twitter-hashtag pretty-link js-nav" dir="ltr"><s>#</s><b>retail</b></a> <a href="https://twitter.com/search?q=%23family&src=hash" data-query-source="hashtag_click" class="twitter-hashtag pretty-link js-nav" dir="ltr"><s>#</s><b>family</b></a></p>
多么棒的一天!冒险纳纳曼·卡蓬

我希望它输出如下:

“多棒的一天!冒险之旅nanaman kahapon#ondoy#eurotel#retail#family”

如何解析html代码。我现在正在使用regex,但它会显示其他标记,如href

这是我的正则表达式代码

           WebClient web = new WebClient(); 
           string html = web.DownloadString(filename);

            MatchCollection m1 = Regex.Matches(html, "<p class=\"js-tweet-text tweet-text\">\\s*(.+?)\\s*</p>", RegexOptions.Singleline);
            foreach (Match m in m1)
            {
                MessageBox.Show(m.Groups[1].Value);
            }
WebClient web=newwebclient();
字符串html=web.DownloadString(文件名);
MatchCollection m1=Regex.Matches(html,“

\\s*(.+?)\\s*

”,RegexOptions.Singleline); foreach(匹配m1中的m) { MessageBox.Show(m.Groups[1].Value); }
我只是自己测试了一下,结果打印出来了

What an awesome day! Adventure nanaman kahapon #ondoy #eurotel #retail #family"

请注意,如果您要在实际的twitterpage上运行这段代码,将会有多条Tweet,因此您需要对上面发布的代码进行一些修改。但这应该会让您对如何使用它有一个很好的了解。

您应该结合使用HTML agility pack和正则表达式。Html agility pack可以让Html和正则表达式解析需要在Html中解析的数据,如上面的标记。基于对新用户的SO限制,他们可能需要将其打开一段时间。
What an awesome day! Adventure nanaman kahapon #ondoy #eurotel #retail #family"