2012-04-11 2 views
0

Ich habe den folgenden TextRegex spezifische Tags aus dem Text?

<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> 

i Schleife will durch sie jeden ul-Tag und il zu bekommen im Innern die alle elemet in ul-Tag und jeden ul-Tag in Array

+0

Werfen Sie einen Blick auf [RegEx Spiel offen Tags außer XHTML self-contained tags] (http://stackoverflow.com/ nehmen sollte questions/1732348/regex-match-open-tags-except-xhtml-in sich abgeschlossene-tags) – jtbandes

Antwort

1

Mit HtmlAgilityPack

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(); 
} 
+0

ok wie zu loeschen, um id von jedem il und text darin zu extrahieren –

+1

@ahmednaguib siehe die antwort. Ich habe aktualisiert. –

+0

ich danke Ihnen sehr, aber das letzte, was ich möchte ich ID wie foreach (var li in ul) {string id = li.id; Konsole.WriteLine (li); } wie man das in var list schreibt –

2

Es ist eine schlechte Idee inedd HTML mit RegEx analysieren. Mai werden Sie in Betracht DOM-Parser, zum Beispiel Html Agility Pack