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

在html字符串中获得某字符集合并替换
<!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
当然还有其他文件其他路径
替换成““字符串就好了
研究了快一个上午了个人的正则表达式实在不行。

------解决方案--------------------
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());
}

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

------解决方案--------------------
替换用      .Replace 函数