web-dev-qa-db-ja.com

c#.netを使用したHTMLの解析

次のHTMLファイルを解析しようとしていますが、keyの値を取得したいと思います。これは、Silverlight for Windows Phoneで行われています。

<HTML>
<link ref="shortcut icon" href="favicon.ico">
<BODY>
<script Language="JavaScript">
location.href="login.html?key=UEFu1EIsgGTgAV7guTRhsgrTQU28TImSZkYhPMLj7BChpBkvlCO11aJU2Alj4jc5"
</script>
<CENTER><a href="login.html?key=UEFu1EIsgGTgAV7guTRhsgrTQU28TImSZkYhPMLj7BChpBkvlCO11aJU2Alj4jc5">Welcome</a></CENTER></BODY></HTML>

ここからどこに行くのか、何かアイデアはありますか?

ありがとう

47
Nathan

HTMLAgilityPackを見てください。そのかなりまともなHTMLパーサー

http://html-agility-pack.net/?z=codeplex

======

開始するためのコードを次に示します(エラーチェックが必要です)

HtmlDocument document = new HtmlDocument(); 
string htmlString = "<html>blabla</html>";
document.LoadHtml(htmlString);
HtmlNodeCollection collection = document.DocumentNode.SelectNodes("//a");
foreach (HtmlNode link in collection)
{
     string target = link.Attributes["href"].Value;
}
68
Kurru

正規表現( Regex class )を使用できます。式は次のようになります:login.html\?key=[^"]*

0
Rafal Spacjer