using System.Text.RegularExpressions;
public static void Main()
var fullString = "[#$^@#$^] Bharat Arora <bharat.arora@magnetforensics.com> boom";
var regex = new Regex(@"^[^A-Za-z]*(?<displayName>.+) \<(?<emailAddress>.+)\>", RegexOptions.Compiled);
var match = regex.Match(fullString);
Console.WriteLine("Found match: " + match.Value);
for (int ctr = 1; ctr <= match.Groups.Count - 1; ctr++)
Console.WriteLine("\tGroup {0}: {1}", ctr, match.Groups[ctr].Value);
foreach (Capture capture in match.Groups[ctr].Captures)
Console.WriteLine("\tCapture {0}: {1}", captureCtr, capture.Value);