我有以下文字
<fieldset>
<ul id="ContentPlaceHolder2_1g" class="profList column ui-sortable">
<legend class="group">المجموعه 1</legend>
<li id="ContentPlaceHolder2_8">محمود حسن ابراهيم عبد الصمد</li>
/ul></fieldset>
<fieldset>
<ul id="ContentPlaceHolder2_2g" class="profList column ui-sortable">
<legend class="group">المجموعه 2</legend>
<li id="ContentPlaceHolder2_9">محمود فتحى ابراهيم عبد الصمد</li>
<li id="ContentPlaceHolder2_10">احمد محسن احمد على</li>
<li class="" style="" id="ContentPlaceHolder2_3">احمد درويش محمود عباس</li>
</ul>
</fieldset>
<fieldset>
<ul id="ContentPlaceHolder2_3g" class="profList column ui-sortable">
<legend class="group">المجموعه 3</legend>
<li id="ContentPlaceHolder2_11">محمد سيد محمد سيد</li>
</ul>
</fieldset>
我想循环遍历它以获取每个ul标签和il里面的所有elemet in ul标签和数组中的每个ul标签
答案 0 :(得分:2)
使用RegEx解析html是个坏主意。也许你应该考虑DOM解析器,例如Html Agility Pack
答案 1 :(得分:1)
HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(html);
var list = doc.DocumentNode.Descendants("ul")
.Select(n => n.Descendants("li").Select(li => new {id=li.Id,text=li.InnerText }).ToList())
.ToList();
foreach (var ul in list)
{
foreach(var li in ul)
{
Console.WriteLine(li.id + " " + li.text);
}
Console.WriteLine();
}