05
2012
06

C# 检查邮件地址是否正确,是否符合邮件地址格式要求

        /// <summary>
        /// 检查邮件地址是否正确
        /// </summary>
        /// <param name="strEmail"></param>
        /// <returns>正确返回true</returns>
        public bool CheckEmail(string strEmail)
        {
            int i, j;
            string strTmp, strResult;
            string strWords = "abcdefghijklmnopqrstuvwxyz_-.0123456789"; //定义合法字符范围

            bool blResult = false;
            strTmp = strEmail.Trim();
            //检测输入字符串是否为空,不为空时才执行代码。
            if (!(strTmp == "" || strTmp.Length == 0))
            { //判断邮件地址中是否存在“@”号
                if ((strTmp.IndexOf("@") < 0))
                {
                    blResult = true;
                    return blResult;
                }
                //以“@”号为分割符,把地址切分成两部分,分别进行验证。
                string[] strChars = strTmp.Split(new char[] { '@' });
                foreach (string strChar in strChars)
                {
                    i = strChar.Length; //“@”号前部分或后部分为空时。
                    if (i == 0)
                    {
                        blResult = true;
                        return blResult;
                    }
                    //逐个字进行验证,如果超出所定义的字符范围strWords,则表示地址非法。
                    for (j = 0; j < i; j++)
                    {

                        strResult = strChar.Substring(j, 1).ToLower();//逐个字符取出比较

                        if (strWords.IndexOf(strResult) < 0)

                        {
                            blResult = true;
                            return blResult;
                        }
                    }
                }
            }
            return blResult;
        }

« 上一篇下一篇 »

评论列表:

谢谢博主分享了

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。