日期:2014-05-18  浏览次数:20680 次

请问.net如何采集指定页面指定区间的内容呢?
如题,比如一个网页源代码里面有<!--a-->
……
<!--n-->

如果我要采集这两个标记之间的内容,.net应该如何实现呢?

------解决方案--------------------
很高兴的回答你,抓取网页的内容,最好使用正则表达式,其他的实现起来都没正则简单.
<!--a-->[\s\S]*?<!--n-->,试试这个正则,也许可以帮到你
------解决方案--------------------
html下载下来(google HttpWebRequest)
然后解析,看1楼的
------解决方案--------------------
"(?i)<(\w+)[^<>]*>[^<>]*\$Insert\$[^<>]*</\1>"
或者
(?<=div\s*id='div1'[^>]*>)(?=.*</div>)[^<]*|(?<=img\s+src=')(?=.*\/>)[^']*

------解决方案--------------------
C# code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string strSource = @"C:\sdsd\sdsds\aa\wssww\ww\ee\rrrss.jpg"; //这里放网页源代码
            strSource = Regex.Match(strSource, @"(\\[^\\]+){3}$",   //这里可以放正则
                RegexOptions.IgnoreCase | RegexOptions.RightToLeft).Groups[0].Value;
            Console.WriteLine(strSource);
            Console.ReadLine();
        }
    }
}