<span id="tt">...ABCD&nbsp;<BR><BR>&nbsp;&nbsp; <IMG  src="/3.jpg" width=450 border=0><BR>DEF<BR>&nbsp;&nbsp; <IMG src="/5.jpg" border=0><BR>(记者:小王)....&nbsp;&nbsp;<BR></span>我想提取...ABCD&nbsp;<BR><BR>&nbsp;&nbsp; <BR>DEF<BR>&nbsp;&nbsp; <BR>....&nbsp;&nbsp;<BR>简单的说就是将<span id="tt">.....</span>里的源码只要保留文字与换行符与空格,去掉括号(..)以及图片以及其他不相关的代码请问怎么弄啊

解决方案 »

  1.   

    简单的思路,先把HTML代码段中的span标签内的东西提取出来,然后对每个符合标准的代码段进行过滤,去除其中的括号以及图片。即可。
    第一步提取正则
    Regex re = new Regex("(?is)(?<=<span[^>]*>)(?>.*?(?=</span>))", RegexOptions.None);
    MatchCollection mc = re.Matches("text");
    foreach (Match ma in mc)
    {
    }
    第二步过滤
    所有括号:[\((].*?[\))]
    所有img标记:<[img|IMG][^>]*>
      

  2.   

    图片就是<img之类的啦,不相关的代码就是如<a之类的连接了
      

  3.   

    string str = "源码";
    str = Regex.Replace(new Regex("(?is)<span id=""tt"">(.+?)</span>").Match(str).Groups[1].Value.Replace("<BR>","[BR]"), @"<.+?>", "").Replace("[BR]", "<BR>");