Пример #1
0
        /// <summary>
        /// Returns true if input is valid email
        /// </summary>
        /// <param name="input">Input</param>
        public static bool IsValidEmail(string input)
        {
            if (String.IsNullOrEmpty(input))
                return false;

            // Use IdnMapping class to convert Unicode domain names.
            try
            {
                validDomain v = new validDomain();
                input = Regex.Replace(input, @"(@)(.+)$", v.DomainMapper,
                                      RegexOptions.None, TimeSpan.FromMilliseconds(200));
                if (!v.isValid) return false;
            }
            catch (RegexMatchTimeoutException)
            {
                return false;
            }

            if (string.IsNullOrEmpty(input)) return false;

            // Return true if strIn is in valid e-mail format.
            try
            {
                return Regex.IsMatch(input,
                      @"^(?("")("".+?(?<!\\)""@)|(([0-9a-z]((\.(?!\.))|[-!#\$%&'\*\+/=\?\^`\{\}\|~\w])*)(?<=[0-9a-z])@))" +
                      @"(?(\[)(\[(\d{1,3}\.){3}\d{1,3}\])|(([0-9a-z][-\w]*[0-9a-z]*\.)+[a-z0-9][\-a-z0-9]{0,22}[a-z0-9]))$",
                      RegexOptions.IgnoreCase, TimeSpan.FromMilliseconds(250));
            }
            catch (RegexMatchTimeoutException)
            {
                return false;
            }
        }
Пример #2
0
        /// <summary>
        /// Returns true if input is valid email
        /// </summary>
        /// <param name="input">Input</param>
        public static bool IsValidEmail(string input)
        {
            if (String.IsNullOrEmpty(input))
            {
                return(false);
            }

            // Use IdnMapping class to convert Unicode domain names.
            try
            {
                validDomain v = new validDomain();
                input = Regex.Replace(input, @"(@)(.+)$", v.DomainMapper,
                                      RegexOptions.None, TimeSpan.FromMilliseconds(200));
                if (!v.isValid)
                {
                    return(false);
                }
            }
            catch (RegexMatchTimeoutException)
            {
                return(false);
            }

            if (string.IsNullOrEmpty(input))
            {
                return(false);
            }

            // Return true if strIn is in valid e-mail format.
            try
            {
                return(Regex.IsMatch(input,
                                     @"^(?("")("".+?(?<!\\)""@)|(([0-9a-z]((\.(?!\.))|[-!#\$%&'\*\+/=\?\^`\{\}\|~\w])*)(?<=[0-9a-z])@))" +
                                     @"(?(\[)(\[(\d{1,3}\.){3}\d{1,3}\])|(([0-9a-z][-\w]*[0-9a-z]*\.)+[a-z0-9][\-a-z0-9]{0,22}[a-z0-9]))$",
                                     RegexOptions.IgnoreCase, TimeSpan.FromMilliseconds(250)));
            }
            catch (RegexMatchTimeoutException)
            {
                return(false);
            }
        }