<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=unicode" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.6001.19400"></HEAD>
<BODY>
<P><IMG border=0 hspace=0 alt="" align=baseline 
src="C:\Documents and Settings\Administrator\桌面\红色按钮.png"></P>
<P>&nbsp;</P>
<OL>
  <OL>
    <LI>
    <DIV align=left><STRONG><EM><U>rthth2013年3月6日<SUP>rty
    <TABLE border=1 cellSpacing=0 cellPadding=0 cols=2>
      <TBODY>
      <TR>
        <TD width="50%">&nbsp;<IMG border=0 hspace=0 alt="" align=baseline 
          src="C:\Documents and Settings\Administrator\桌面\未命名.jpg"></TD>
        <TD width="50%">&nbsp;</TD></TR>
      <TR>
        <TD width="50%">&nbsp;</TD>
        <TD 
    width="50%">&nbsp;</TD></TR></TBODY></TABLE></SUP></U></EM></STRONG></DIV></LI></OL></OL></BODY></HTML>
需要取出
C:\Documents and Settings\Administrator\桌面\未命名.jpg
C:\Documents and Settings\Administrator\桌面\红色按钮.png
当然还有其他文件其他路径
替换成““字符串就好了
研究了快一个上午了个人的正则表达式实在不行。

解决方案 »

  1.   

    Regex regx = new Regex("src=\"([\\s\\S].*?)\"");
    MatchCollection mc = regx.Matches(html);
    List<string> lstFile=new List<string>();
     foreach (Match m in mc)
     {
        lstFile.Add(m.ToString());
    }
      

  2.   

     string str = File.ReadAllText("D:\\1.txt", Encoding.Default);
                var list = Regex.Matches(str, @"(?is)(?<=src=[""']?)[a-z]:\\([^\""']+\\)*[^""']+(?=[""']?)").OfType<Match>().Select(t => t.Value).ToList();
               
      

  3.   

    如果替换的话
      Regex regx = new Regex("src=\"([\\s\\S].*?)\"");
                MatchCollection mc = regx.Matches(html);
               html=regx.Replace(html,"src=\"\"");
      

  4.   

                string accp = "<src=\"C:\\Documents and Settings\\Administrator\\桌面\\未命名.jpg\"";
                String regExpurl = "src=\"([\\w\\W]*?)\"";
                string UrlAddress = null;
                Regex regurl = new Regex(regExpurl);
                MatchCollection mcurl = regurl.Matches(accp);
                if (mcurl.Count > 0)
                {
                    UrlAddress = mcurl[0].Groups[1].Value;
                }
    这是取其中一个~
      

  5.   

    替换用      .Replace 函数
      

  6.   


    string str = "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">" +
    "<HTML><HEAD>" +
    "<META content=\"text/html; charset=unicode\" http-equiv=Content-Type>" +
    "<META name=GENERATOR content=\"MSHTML 8.00.6001.19400\"></HEAD>" +
    "<BODY>" +
    "<P><IMG border=0 hspace=0 alt=\"\" align=baseline " +
    "src=\"C:\\Documents and Settings\\Administrator\\桌面\\红色按钮.png\"></P>" +
    "<P>&nbsp;</P>" +
    "<OL>" +
    "  <OL>" +
    "    <LI>" +
    "    <DIV align=left><STRONG><EM><U>rthth2013年3月6日<SUP>rty" +
    "    <TABLE border=1 cellSpacing=0 cellPadding=0 cols=2>" +
    "      <TBODY>" +
    "      <TR>" +
    "        <TD width=\"50%\">&nbsp;<IMG border=0 hspace=0 alt=\"\" align=baseline " +
    "          src=\"C:\\Documents and Settings\\Administrator\\桌面\\未命名.jpg\"></TD>" +
    "        <TD width=\"50%\">&nbsp;</TD></TR>" +
    "      <TR>" +
    "        <TD width=\"50%\">&nbsp;</TD>" +
    "        <TD " +
    "    width=\"50%\">&nbsp;</TD></TR></TBODY></TABLE></SUP></U></EM></STRONG></DIV></LI></OL></OL></BODY></HTML>";            str = Regex.Replace(str, "src\\s*=\\s*('|\"|)(.*?)\\1", (match) =>
                {
                    if(match.Success)
                    {
                        return match.Value.Replace(match.Groups[2].Value,string.Empty);
                    }
                    return match.Value;
                });            Console.WriteLine(str);
                /*
                <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML><HEAD><META content="text/html; charset=unicode" http-equiv=Content-Type><META name=GENERATOR content="MSHTML 8.00.6001.19400"></HEAD><BODY><P><IMG border=0 hspace=0 alt="" align=baseline src=""></P><P>&nbsp;</P><OL>  <OL>    <LI>    <DIV align=left><STRONG><EM><U>rthth2013年3月6日<SUP>rty    <TABLE border=1 cellSpacing=0 cellPadding=0 cols=2>      <TBODY>      <TR>        <TD width="50%">&nbsp;<IMG border=0 hspace=0 alt="" align=baseline           src=""></TD>        <TD width="50%">&nbsp;</TD></TR>      <TR>        <TD width="50%">&nbsp;</TD>        <TD     width="50%">&nbsp;</TD></TR></TBODY></TABLE></SUP></U></EM></STRONG></DIV></LI></OL></OL></BODY></HTML>
                 */