<div class="a"> 里面有标签可能也有div </div>
有没有什么办法 不管理面有什么标签 或者DIV 什么的。 我都只取从第一个div到对应的</div>结束里面的东西
------解决方案--------------------------------------------------------
你用正则的平衡组试试
------解决方案--------------------------------------------------------
XmlDocument xmlDoc=new XmlDocument();
xmlDoc.LoadXml(s);
取xmlDoc.DocumentElement.InnerXml就是了。
最好用HtmlAgilityPack中的HtmlDocument而不是XmlDocument。
------解决方案--------------------------------------------------------
- C# code
string test = @"<div id=""0"" > 0 </div> <div id=""1"" class=""a""> 1 <div id=""2""> 2 </div> </div>"; //根据class=a来匹配 Regex reg = new Regex(@"(?isx)<div[^>]*class=(['""]?)a\1[^>]*?>(?><div[^>]*> (?<Open>)|</div> (?<-Open>)|(?:(?!</?div\b).)*)*(?(Open)(?!))</div>"); string match_str = reg.Match(test).Value; /* <div id=""1"" class=""a""> 1 <div id=""2""> 2 </div> </div> */
------解决方案--------------------------------------------------------
坐等大婶,试问一下一定要用正则表达式吗?jquery不行吗?
------解决方案--------------------------------------------------------
- C# code
using System.Text.RegularExpressions; //需要引用 public string HtmlFilter(string strHtml) //从字符串里删除HTML { Regex regex = new Regex("<[^>]*>", RegexOptions.IgnoreCase); string strOutput = regex.Replace(strHtml, ""); return strOutput; }