/// <summary> /// Parses the address. /// </summary> /// <param name="input">The input.</param> /// <returns></returns> public static Address ParseAddress(string input) { Address address = new Address(); input = input.TrimEnd(';'); try { if (input.IndexOf("<") == -1) { address.Email = Parser.RemoveWhiteSpaces(input); } else { address.Email = System.Text.RegularExpressions.Regex.Match(input, "<(.|[.])*>").Value.TrimStart('<').TrimEnd('>'); address.Name = input.Replace("<" + address.Email + ">", ""); address.Email = Parser.Clean(Parser.RemoveWhiteSpaces(address.Email)); if (address.Name.IndexOf("\"") == -1) { address.Name = Parser.Clean(address.Name); } address.Name = address.Name.Trim(new char[] { ' ', '\"' }); } return(address); } catch { return(new Address(input)); } }