using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"<trkpt\s(?=.*?(\blat\s*=\s*[""']?\s*\b[\d.]+)).*?(\blon\s*=\s*[""']?\s*\b[\d.]+)";
string input = @"<?xml version=""1.0"" encoding=""UTF-8"" standalone=""yes""?>
<trkpt lat=""53.188185"" lon=""7.216993""></trkpt>
<trkpt lat=""53.184541"" lon=""7.217456""></trkpt>
<trkpt lat=""53.188185"" lon=""7.216993""/> (Kurzschreibweise)
<trkpt lat='53.188185' lon='7.216993'></trkpt> (anderen Anführungszeichen)
<trkpt lat=""53.188185"" lon=""7.216993""></trkpt>
<trkpt lon=""7.216993"" lat=""53.188185""></trkpt>
<trkpt lat=""53.188185"" foo='""' bar='""' lon=""7.216993""></trkpt>
<trkpt lat=""53.188185"" foo="" bar="">"" lon=""7.216993""></trkpt>";
foreach (Match m in Regex.Matches(input, pattern))
{
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