using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"^<(?<Direction>(Send|Recv)) TYPE=""(?<Function>.+?)"" UTC=""(?<date>.+?)"" ID=""(?<ID>.+?)""(?:\s*\/>|>(?<Message>.*?)<\/\1>)$";
string input = @"<Recv TYPE=""Select.req"" UTC=""05.11.2024 01:43:35"" ID=""2130706432"" />
<Send TYPE=""Select.req"" UTC=""05.11.2024 01:43:35"" ID=""1152"" />
<Send TYPE=""Select.rsp"" UTC=""05.11.2024 01:43:35"" ID=""2130706432"" />
<Send TYPE=""S1F13W"" UTC=""05.11.2024 01:43:35"" ID=""1153"">
<List Items=""2"">
<Ascii Size=""17"" ItemName=""MDLN"">SECSService</Ascii>
<Ascii Size=""20"" ItemName=""SOFTREV"">1.0</Ascii>
</List>
</Send>
<Recv TYPE=""Select.rsp"" UTC=""05.11.2024 01:43:35"" ID=""1152"" />
<Recv TYPE=""S1F14"" UTC=""05.11.2024 01:43:36"" ID=""1153"">
<List Items=""2"">
<Binary Size=""4"">0x00</Binary>
<List Items=""0"" />
</List>
</Recv>
<Recv TYPE=""S1F13W"" UTC=""05.11.2024 01:43:36"" ID=""1"">
<List Items=""0"" />
</Recv>
<Send TYPE=""S2F34"" UTC=""05.11.2024 01:43:38"" ID=""4"">
<Binary Size=""4"" ItemName=""DRACK"">0x00</Binary>
</Send>
<Recv TYPE=""S2F37W"" UTC=""05.11.2024 01:43:39"" ID=""5"">
<List Items=""2"">
<Boolean Size=""5"">False</Boolean>
<List Items=""17"">
<UInt32 Size=""1"">1</UInt32>
<UInt32 Size=""1"">2</UInt32>
<UInt32 Size=""1"">3</UInt32>
<UInt32 Size=""1"">5</UInt32>
<UInt32 Size=""1"">6</UInt32>
<UInt32 Size=""2"">10</UInt32>
<UInt32 Size=""2"">11</UInt32>
<UInt32 Size=""2"">20</UInt32>
<UInt32 Size=""2"">21</UInt32>
<UInt32 Size=""2"">22</UInt32>
<UInt32 Size=""2"">40</UInt32>
<UInt32 Size=""2"">41</UInt32>
<UInt32 Size=""2"">42</UInt32>
<UInt32 Size=""2"">50</UInt32>
<UInt32 Size=""2"">52</UInt32>
<UInt32 Size=""2"">70</UInt32>
<UInt32 Size=""2"">71</UInt32>
</List>
</List>
</Recv>";
RegexOptions options = RegexOptions.Singleline | RegexOptions.IgnoreCase | RegexOptions.Multiline;
foreach (Match m in Regex.Matches(input, pattern, options))
{
Console.WriteLine("'{0}' found at index {1}.", m.Value, m.Index);
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for C#, please visit: https://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex(v=vs.110).aspx