希望使用正则表达式提取html标签符
输入
"<div>asdf<span>gsdag</span></div>asdf<html>asdfas</html><p/><html>asdfas</html>"
输出
div,span,html,既取得到所有html标签名的一个list

解决方案 »

  1.   

    忘了一点,还包括 取得类似  <br>,<br />
      

  2.   

    //Try:string result=string.Empty;
    Regex reg=new Regex(@"<(\w+)\b[^>]*((?!/)>[\s\S]*?</\1>|[^>]*/>)");
    foreach(Match m in reg.Matches("你的网页代码"))
    {
     result+=m.Groups[1].Value+" ";
    }
      

  3.   

    正则写成下面这样好一些。
    Regex reg=new Regex(@"<(\w+)\b[^>]*((?!/)>[\s\S]*?</\1>|/>)");
      

  4.   


                string s = " <div>asdf <span>gsdag </span> </div>asdf <html>asdfas </html> <p/> <html>asdfas </html>";
                string sNew = System.Text.RegularExpressions.Regex.Replace(s,"<.*?>","");
      

  5.   

    不太对啊,大哥,count = 1
      

  6.   

    to pztx1992: 输出反了啊,我要的是标签 “div,span,html”不是内容啊!
      

  7.   


    哦,是有点问题,把正则表达式改成:
    Regex reg=new Regex(@"<(\w+)(?=\b[^>]*(?:(?!/)>[\s\S]*?</\1>|/>))");
    /*输出结果:
    div span html p html 
    */