Hallo,
habe folgenden String:
<?xml version="1.0" encoding="utf-8"?>
<channel>
<setting>
<typ>Titel</typ>
<title>Meldegruppen</title>
<link></link>
</setting>
<setting><typ>Button1</typ>
<title></title>
<link></link>
</setting>
<setting><typ>Button2</typ>
<title></title>
<link></link>
</setting>
<setting><typ>Button3</typ>
<title></title>
<link></link>
</setting>
<setting><typ>Spalteninfos</typ>
<title>Meldegruppe</title>
<line1>200,100,80,100</line1>
<line2>ID,Name,Ruhe/Offen,Ein/Aus,Alarm,Aktion</line2></setting>
<item>
<title>1 MG 1 IOM 15196 </title>
<nummer>1</nummer>
<id>1</id>
<icon>grau</icon>
<image1>1</image1>
<image2>1</image2>
<image3>1</image3>
<link>NO_LINK</link>
<line1> </line1>
<line2>Ruhe</line2>
<line3>Ein</line3>
<line4>kein Alarm</line4>
<btlink1>RC_ABI_Username_CMDMG_1_1_</btlink1>
<btlink2>RC_ABI_Username_CMDMG_1_2_</btlink2>
<btlink3>RC_ABI_Username_CMDMG_1_3_</btlink3>
<btlink4>RC_ABI_Username_CMDMG_1_4_</btlink4>
<bttext1>Rueckstellen (exkl.)</bttext1>
<bttext2>Rueckstellen(inkl.)</bttext2>
<bttext3>Ein</bttext3>
<bttext4>Aus</bttext4>
</item>
<item>
<title>11 Brand </title>
<nummer>11</nummer>
<id>11</id>
<icon>grau</icon>
<image1>1</image1>
<image2>1</image2>
<image3>1</image3>
<link>NO_LINK</link>
<line1> </line1>
<line2>Ruhe</line2>
<line3>Ein</line3>
<line4>kein Alarm</line4>
<btlink1>RC_ABI_Username_CMDMG_11_1_</btlink1>
<btlink2>RC_ABI_Username_CMDMG_11_2_</btlink2>
<btlink3>RC_ABI_Username_CMDMG_11_3_</btlink3>
<btlink4>RC_ABI_Username_CMDMG_11_4_</btlink4>
<bttext1>Rueckstellen (exkl.)</bttext1>
<bttext2>Rueckstellen(inkl.)</bttext2>
<bttext3>Ein</bttext3>
<bttext4>Aus</bttext4>
</item>
</channel>
Wollte jetzt die <item></item> mit Regex rausschneiden, wieso geht das nicht?
Das ist mein Code:
MatchCollection paramValues = Regex.Matches(message, @"(<item>).*?(</item>)",RegexOptions.Multiline);
System.Diagnostics.Debug.WriteLine("Elemente Anzahl:"+paramValues.Count);
Elemente Anzahl:0
Ich hatte bereits ähnliches verfasst vor einiger Zeit aber das war HTML:
Regex <form> und </form> auslesen
Unsere Website
iPhone Programmierung | Android Programmierung
Hallo Ploetzi,
wenn es sich sowieso um ein XML-Format handelt, warum willst du dann Regex dafür verwenden? Warum benutzt du nicht einfach die XmlDocument-Klasse um Items zu löschen?
Wenn Du bei Regex bleiben willst:
Dann RegexOptions.SingleLine wählen, damit der Zeilenumbruch "\n" auch mittels dot (".") gematched werden kann.
Dann kommt bei mri Elemente Anzahl:2 dabei raus...