日期:2014-05-17  浏览次数:21326 次

如何截取网页内容 谢谢
本帖最后由 cnxxxxcncn 于 2013-08-03 10:26:34 编辑
请教两个问题

问题一:
c2="<title>网站名</title>"

 string d2 = @"<title>(?<title>[^<]*)</title>";
 string title = Regex.Match(c2, d2).ToString();

结果是:<title>网站名</title>

我想要的结果是:网站名 
表达式改怎么写?


问题二:

字符串   str1


<table class="result" id="3" tpl="se_st_default"  ><tr><td class="f" ><h3 class="t">
<span class="g">baidu1.cn/<b>shownews.asp</b>?<b>id=</b>329&nbsp;2011-11-14&nbsp;</span>

濮阳-郑州 5:30-19:00 30-40分/班 濮阳-保定 7:20 濮阳-安阳 6:10-18:30 20-30分/...</div

<span class="g">www.baidu2.com/<b>shownews.asp</b>?<b>id=</b>412&nbsp;2011-5-16&nbsp;</span><table class="result" id="3" tpl="se_st_default"  ><tr><td class="f" ><h3 class="t">
<span class="g">baidu3.cn/<b>shownews.asp</b>?<b>id=</b>329&nbsp;2011-11-14&nbsp;</span>濮阳-郑州 5:30-19:00 30-40分/班 濮阳-保定 7:20 濮阳-安阳 6:10-18:30 20-30分/...</div
<span class="g">www.baidu4.com/<b>shownews.asp</b>?<b>id=</b>412&nbsp;2011-5-16&nbsp;</span><table class="result" id="3" tpl="se_st_default"  ><tr><td class="f" ><h3 class="t">





 我想要的结果是,循环输出:
baidu1.cn
www.baidu2.com
baidu3.cn
www.baidu4.com

------解决方案--------------------
string title = Regex.Match(c2, d2).Groups["title"].Value; //网站名

------解决方案--------------------
string sInput = File.ReadAllText(@"C:\Users\myx\Desktop\Test.txt",Encoding.GetEncoding("GB2312"));
            var list = Regex.Matches(sInput, @"(?<=<span[^>]*?class=""g""[^>]*?>)[^/]+").OfType<Match>().Select(a => a.Value);