• csharp:Validate email address using C#


     /// <summary>
        /// 
        /// </summary>
        /// <param name="email"></param>
        /// <returns></returns>
        public bool IsValidEmail(string email)
        {
            try
            {
                var addr = new System.Net.Mail.MailAddress(email);
                return addr.Address == email;
            }
            catch
            {
                return false;
            }
        }
        /// <summary>
        /// using System.ComponentModel.DataAnnotations; 4.5 over  涂聚文(Geovin Du)标注
        /// </summary>
        /// <param name="source"></param>
        /// <returns></returns>
        public bool IsValidEmailDu(string source)
        {
            //https://referencesource.microsoft.com/#System.ComponentModel.DataAnnotations/DataAnnotations/EmailAddressAttribute.cs,54
            return new EmailAddressAttribute().IsValid(source);
        }
    
    
        static Regex ValidEmailRegex = CreateValidEmailRegex();
    
        /// <summary>
        /// Taken from http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx
        /// </summary>
        /// <returns></returns>
        private static Regex CreateValidEmailRegex()
        {
            string validEmailPattern = @"^(?!.)(""([^""
    \]|\[""
    \])*""|"
                + @"([-a-z0-9!#$%&'*+/=?^_`{|}~]|(?<!.).)*)(?<!.)"
                + @"@[a-z0-9][w.-]*[a-z0-9].[a-z][a-z.]*[a-z]$";
    
            return new Regex(validEmailPattern, RegexOptions.IgnoreCase);
        }
    
        internal  bool EmailIsValid(string emailAddress)
        {
            bool isValid = ValidEmailRegex.IsMatch(emailAddress);
    
            return isValid;
        }
        /// <summary>
        /// 
        /// </summary>
        /// <param name="email"></param>
        /// <returns></returns>
        public  bool EmailIsValidGeovin(string email)
        {
            string expression = "\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*";
    
            if (Regex.IsMatch(email, expression))
            {
                if (Regex.Replace(email, expression, string.Empty).Length == 0)
                {
                    return true;
                }
            }
            return false;
        }
        /// <summary>
        /// 
        /// </summary>
        /// <param name="email"></param>
        /// <returns></returns>
        public static bool IsValidEmailTu(this string email)
        {
            string pattern = @"^(?!.)(""([^""
    \]|\[""
    \])*""|" + @"([-a-z0-9!#$%&'*+/=?^_`{|}~]|(?<!.).)*)(?<!.)" + @"@[a-z0-9][w.-]*[a-z0-9].[a-z][a-z.]*[a-z]$";
            var regex = new Regex(pattern, RegexOptions.IgnoreCase);
            return regex.IsMatch(email);
        }
        /// <summary>
        /// 
        /// </summary>
        /// <param name="emailAddress"></param>
        /// <returns></returns>
        public static bool IsValidEmailAddress(string emailAddress)
        {
            bool MethodResult = false;
    
            try
            {
                System.Net.Mail.MailAddress m = new System.Net.Mail.MailAddress(emailAddress);
    
                MethodResult = m.Address == emailAddress;
    
            }
            catch //(Exception ex)
            {
                //ex.HandleException();https://stackoverflow.com/questions/1365407/c-sharp-code-to-validate-email-address
    
            }
    
            return MethodResult;
    
        }
        /// <summary>
        /// 
        /// </summary>
        /// <param name="InputEmail"></param>
        /// <returns></returns>
        public static bool IsValidEmailId(string InputEmail)
        {
            Regex regex = new Regex(@"^([w.-]+)@([w-]+)((.(w){2,3})+)$");
            Match match = regex.Match(InputEmail);
            if (match.Success)
                return true;
            else
                return false;
        }
        /// <summary>
        /// 
        /// </summary>
        /// <param name="emailAddress"></param>
        /// <returns></returns>
        public bool ValidateEmail(string emailAddress)
        {
            string regexPattern = @"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,4}$";
            Match matches = Regex.Match(emailAddress, regexPattern);
            return matches.Success;
        }
    

      

  • 相关阅读:
    .Net中World转PDF
    asp.net开启多线程异步处理
    win8.1 安装kb2999226 一直提示 搜索更新
    MVC实例应用模式
    MVC模式
    23种设计模式
    Android 的Android Device Monitor 打不开出现 A error has occured
    xxx系统的可用性和易用性分析
    淘宝网的质量属性分析
    《架构漫谈》读后感
  • 原文地址:https://www.cnblogs.com/geovindu/p/13442774.html
Copyright © 2020-2023  润新知