using System.Diagnostics;
using System.Text.RegularExpressions;
private static Stopwatch w = new Stopwatch();
private static string data = "0x00 00 00 00 00 00 00 00 00 00 3A 00 F1 10 30 00 ..............09";
public static void Main()
private static void SubstringAndTrim1()
string result = data.Substring(0, data.IndexOf(".")).TrimStart("0x ".ToCharArray());
Console.WriteLine("Substring + Trim #1:\t {0}", w.Elapsed);
Console.WriteLine(result);
private static void SubstringAndTrim2()
string result = data.Substring(2).TrimStart("0 ".ToCharArray()).TrimEnd("0123456789.".ToCharArray()).Trim();;
Console.WriteLine("Substring + Trim #2:\t {0}", w.Elapsed);
Console.WriteLine(result);
private static void SubstringAndTrim3()
string result = data.Substring(2, data.IndexOf(".") - 2).TrimStart("0 ".ToCharArray());
Console.WriteLine("Substring + Trim #3:\t {0}", w.Elapsed);
Console.WriteLine(result);
private static void RegExp1()
var reg = new Regex(@"0x(00 )+(.+) \.");
var match = reg.Match(data);
string result = match.Groups[2].Value;
Console.WriteLine("RegExp #1:\t\t\t {0}", w.Elapsed);
Console.WriteLine(result);
private static void RegExp2()
var reg = new Regex(@"0[x][0]+([1-90a-fA-F]+)");
foreach (Match m in reg.Matches(data.Replace(" ", String.Empty)))
result += m.Groups[1].Value;
Console.WriteLine("RegExp #2:\t\t\t {0}", w.Elapsed);
Console.WriteLine(result);