Exemple #1
0
        public static bool IsValidEmail(string emailAddress, out EnEmailAddressStatusCode statusCode)
        {
            statusCode = EnEmailAddressStatusCode.Valid;

            if (String.IsNullOrEmpty(emailAddress))
            {
                statusCode = EnEmailAddressStatusCode.Blank;
                return(false);
            }

            // Use IdnMapping class to convert Unicode domain names.
            emailAddress = Regex.Replace(emailAddress, @"(@)(.+)$", Mailer.DomainMapper);

            if (String.IsNullOrEmpty(emailAddress))
            {
                statusCode = EnEmailAddressStatusCode.IncorrectFormat;
                return(false);
            }

            // Return true if emailAddress is in valid e-mail format.
            bool valid = Regex.IsMatch(emailAddress,
                                       @"^(?("")(""[^""]+?""@)|(([0-9a-z]((\.(?!\.))|[-!#\$%&'\*\+/=\?\^`\{\}\|~\w])*)(?<=[0-9a-z])@))" +
                                       @"(?(\[)(\[(\d{1,3}\.){3}\d{1,3}\])|(([0-9a-z][-\w]*[0-9a-z]*\.)+[a-z0-9]{2,17}))$",
                                       RegexOptions.IgnoreCase);

            if (!valid)
            {
                statusCode = EnEmailAddressStatusCode.IncorrectFormat;
            }

            return(valid);
        }
Exemple #2
0
        public static bool IsValidEmail(string emailAddress)
        {
            EnEmailAddressStatusCode code = EnEmailAddressStatusCode.Blank;

            return(IsValidEmail(emailAddress, out code));
        }