首页 > 技术文章 > 正则表达式。取Html中Table中的Tr,Td里面的值

mr-hu2009 2019-05-22 16:03 原文

string a = "<table><tr><td width =\"130\" align=\"center\" class=\"td1\">a1</td><td width=\"130\" align=\"center\" class= \"td1\">a2</td><td width=\"130\" align=\"center\" class=\"td1\">a3</td><td width=\"130\" align=\"center\" class=\"td1\">a4</td></tr></table>"; 
                Regex reg1 = new Regex(@"<[^>]+>([^<>]+)<[^>]+>", RegexOptions.IgnoreCase);//此用于取一个时,不是集合时应用。  
                string str = reg1.Match(a).Groups[1].Value;

                Regex reg12 = new Regex(@"<td.*>([^<>]+)</td>", RegexOptions.IgnoreCase);
                string str1 = reg12.Match(a).Groups[1].Value;


                MatchCollection match = Regex.Matches(a, @"<td[^>].*?>(?<content>[^<>]+)</td>", RegexOptions.Compiled);
                MatchCollection match2 = Regex.Matches(a, @"<[^>]+>(?<content>[^<>]+)<[^>]+>", RegexOptions.Compiled);  //Success  
                MatchCollection match3 = Regex.Matches(a, @"<td.*?class= 'td1'>(?<content>[^<>]+)</td>", RegexOptions.Compiled | RegexOptions.IgnoreCase | RegexOptions.ExplicitCapture);
                MatchCollection match4 = Regex.Matches(a, @"<td[^>]+>(?<content>[^<>]+)</td>", RegexOptions.Compiled);

                string a1 = "<table><tr><td   width= \"130 \"     align= \"center \"   class= \"td1\"> hello </td><td   width= \"130 \"     align= \"center \"   class= \"td1\"> world </td></tr>";
                MatchCollection match5 = Regex.Matches(a1, @"<td.*?class= \""td1\"">(?<content>[^<>]+)</td>", RegexOptions.Compiled | RegexOptions.IgnoreCase | RegexOptions.ExplicitCapture);


                foreach (Match m in match5)
                {
                    Response.Write(m.Groups["content"].Value + " <br> ");
                }

  

推荐阅读