我想在C#中,用正则表达式,把给定字符的所有HTML标签删掉,应该如何做?
谢谢!
顶者有多!

解决方案 »

  1.   

    Regex.Replace()替换掉就可以了.:)
      

  2.   

    <p><strong>加粗字符</strong>请谢你帮我解决问题!</p><img scr="thanks.gif"></img>
    就随便一断HTML标签!
      

  3.   

    谢谢你, cj460cn(cj460cn) 比较急,能不能快点。还有谁会的,帮一下吧。
      

  4.   


    没有调试,你参考一下
    private void button1_Click(object sender, System.EventArgs e)
    {
    string s=@"要替换的字符串";
    string myreg=@"<HTML>|</HTML>";
    string a=Regex.Replace(s,myreg,new MatchEvaluator(this.mydo),System.Text.RegularExpressions.RegexOptions.IgnoreCase);
               this.textBox1.Text=a;
    } private string mydo(Match m)
    {
                string a=m.Value;
     
    if(a.Length>0)
    return "";
    }
      

  5.   

    先谢谢 dazhu2(边城浪子【倚天不出,谁与争锋】不管怎么样子,至少你帮了,
    你能不能给出
    匹配字符串
    就如你上面写的:string myreg=@"<HTML>|</HTML>";
      

  6.   

    string s=@"<HTML>这是一个测试</HTML>";
    Regex digitregex = new Regex("(?<=\\<(\\S)*\\>).*(?=\\</(\\S)*\\>)");
    MatchCollection mc = digitregex.Matches(s);
    if ( mc.Count > 0 ) 
    {
    foreach (Match m in mc) 
    {
        MessageBox.Show("  " + m.Value.ToString());
    }

    else 
    {
    MessageBox.Show("None");
    }
    这个只能检查单个的,我在改改吧.
      

  7.   

    string s=@"<p><strong>加粗字符</strong>请谢你帮我解决问题!</p><img scr=thanks.gif></img>";
    Regex digitregex = new Regex("(?<=\\<(\\S)*\\>)[^<|</|>](\\S)*(?=\\</(\\S)*\\>)");
    MatchCollection mc = digitregex.Matches(s);
    if ( mc.Count > 0 ) 
    {
    foreach (Match m in mc) 
    {
    MessageBox.Show("  " + m.Value.ToString());
    }

    else 
    {
    MessageBox.Show("None");
    }这个是上面的那个改进,能处理多个,但是还有问题,这个的结果是:加粗字符</strong>请谢你帮我解决问题.也就是说中间的那个去不掉,汗啊.....我也是菜鸟,还是请高手出码吧.
      

  8.   

    string pn = "(</?.*?/?>)";
    s = Regex.Replace(s,pn,"");s就是你要处理的字符串
      

  9.   

    谢谢 cj460cn(cj460cn),我也是和你同样的问题 ,
    也谢谢  h_lj(贝塔),但是好像不能全部替掉
      

  10.   

    我试过h_lj(贝塔)的方法,都替换掉了.你那里没有被替换啊? :)
      

  11.   

    string sReg = "(</?.*?/?>)";
    string sRe = Regex.Replace(s,pn,"");
      

  12.   

    string  s  =  "....";  
    s  =  System.Text.RegularExpressions.Regex.Replace(s,  @"<[^>]+>","");
      

  13.   

    TO:h_lj(贝塔) 不好意思是我弄错了。
    谢谢