using System;
using System.Text.RegularExpressions;
public class Test
{
public static void Main()
{
var input = "\"one@tw;,.'o\"@hotmail.com;\"some;thing\"@example.com;hello@world;\"my\\\"quote\"@my.com;quick\\\"brown@fox.jumps";
var mm = Regex.Matches(input, "((?:(?:[^@\"]|(?<=\\\\)\")+|\"([^\"]|(?<=\\\\)\")*\")@[^;]+)(?:;|$)");
foreach (Match m in mm) {
Console.WriteLine(m.Groups[1].Value);
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGV4dC5SZWd1bGFyRXhwcmVzc2lvbnM7CgpwdWJsaWMgY2xhc3MgVGVzdAp7CglwdWJsaWMgc3RhdGljIHZvaWQgTWFpbigpCgl7CgkJdmFyIGlucHV0ID0gIlwib25lQHR3OywuJ29cIkBob3RtYWlsLmNvbTtcInNvbWU7dGhpbmdcIkBleGFtcGxlLmNvbTtoZWxsb0B3b3JsZDtcIm15XFxcInF1b3RlXCJAbXkuY29tO3F1aWNrXFxcImJyb3duQGZveC5qdW1wcyI7CgkJdmFyIG1tID0gUmVnZXguTWF0Y2hlcyhpbnB1dCwgIigoPzooPzpbXkBcIl18KD88PVxcXFwpXCIpK3xcIihbXlwiXXwoPzw9XFxcXClcIikqXCIpQFteO10rKSg/Ojt8JCkiKTsKCQlmb3JlYWNoIChNYXRjaCBtIGluIG1tKSB7CgkJCUNvbnNvbGUuV3JpdGVMaW5lKG0uR3JvdXBzWzFdLlZhbHVlKTsKCQl9Cgl9Cn0=