例如:这个链接"http://news.xinhuanet.com/politics/2007-12/05/content_7200941.htm
"里面的照片是相对路径"<P align=center><IMG src="xin_1721204050818109272296.jpg" border=0></P>";
问题:怎样把src的值替换为自己的图片链接并写到数据库?
请高手给我思路,谢谢!

解决方案 »

  1.   

    <P runat="server" id="img1" align=center> <IMG   src="xin_1721204050818109272296.jpg"   border=0> </P> "; 
    pageload事件
    string src="数据库的地址";
    this.img1.innerhtml+="<IMG   src=\""+src+"\"   border=0> "
      

  2.   

    问题补充:
    新闻是从其他媒体收集的,<p>标记和<img>标记都没有ID怎么办呢?
      

  3.   

    alex0917,我用正则取出来,如何替换并重新写到<img>标记呢
      

  4.   

     string contentText = content.Text;
            string s = "<img.*(?=src=[\"'](?<src>.+?)[\"']).*>";
            Regex re = new Regex("(" + s + ")", RegexOptions.IgnoreCase);
           // Response.Write(contentText);
            MatchCollection mc = re.Matches(contentText);
            foreach (Match m in mc)
            {
                string filesrc = m.Groups["src"].Value;
                Response.Write(filesrc);
                if (filesrc.ToLower().IndexOf("www.jobdll.com") < 0 && filesrc.ToLower().IndexOf("http:") >= 0)
                {
                    int statint = filesrc.LastIndexOf("/") + 1;
                    string fileName = filesrc.Substring((statint < 0 ? 0 : statint));
                    WebClient wc = new WebClient();
                    wc.DownloadFile(filesrc, Server.MapPath("/") + "/user/" + dnsName.Value + "/photo/Pic/" + fileName);
                    contentText = contentText.Replace(filesrc, "/user/" + dnsName.Value + "/photo/Pic/" + fileName);
                }
            }
      

  5.   

    gt5070073, (?<=<IMG[^src]+?src=")[^"]+?(?="[^>]+?>)
    这个表达式希望对你有用
      

  6.   

    可以用啊,我网上都可以啊,只是正则有时一二张的配不上,
    WebClient wc = new WebClient();
    wc.DownloadFile(filesrc, Server.MapPath("/") + "/user/" + dnsName.Value + "/photo/Pic/" + fileName);
    这个类是收集图片用的,代码就没发出来了
      

  7.   

    你可以试试这个功能,在www.jobdll.com注册一个个人用户,在BLOG中发表一下就有收集的功能
      

  8.   

    另外,提醒:gt5070073 你的:www.jobdll.com里面有不安全脚本(kaspersky 7.0 en报告)
      

  9.   

    gt5070073,  (<img\\s[^>]*?src=(?<src>[^\"]*?) [^>]*?>)|(<img\\s[^>]*?src=\"(?<src>[^\"]*?)\"[^>]*?>)
    试试上面的正则
      

  10.   

    谢谢提醒,因为用了51.la 的统计所以kaspersky有提示,没有马的!谢谢大家正则,晚上更新试试!