验证邮箱的合法性(此方法比较准确)

代码:

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.

    self.title=@"验证邮箱的合法性";

    NSString *email=@"[email protected]";
    NSLog(@"---%i--",[self validateEmail:email]);

}
//通过区分字符串
-(BOOL)validateEmail:(NSString*)email
{
    if((0 != [email rangeOfString:@"@"].length) &&
       (0 != [email rangeOfString:@"."].length))
    {
        NSCharacterSet* tmpInvalidCharSet = [[NSCharacterSet alphanumericCharacterSet] invertedSet];
        NSMutableCharacterSet* tmpInvalidMutableCharSet = [tmpInvalidCharSet mutableCopy];
        [tmpInvalidMutableCharSet removeCharactersInString:@"_-"];

        /*
         *使用compare option 来设定比较规则,如
         *NSCaseInsensitiveSearch是不区分大小写
         *NSLiteralSearch 进行完全比较,区分大小写
         *NSNumericSearch 只比较定符串的个数,而不比较字符串的字面值
         */
        NSRange range1 = [email rangeOfString:@"@"
                                      options:NSCaseInsensitiveSearch];

        //取得用户名部分
        NSString* userNameString = [email substringToIndex:range1.location];
        NSArray* userNameArray   = [userNameString componentsSeparatedByString:@"."];

        for(NSString* string in userNameArray)
        {
            NSRange rangeOfInavlidChars = [string rangeOfCharacterFromSet: tmpInvalidMutableCharSet];
            if(rangeOfInavlidChars.length != 0 || [string isEqualToString:@""])
                return NO;
        }

        //取得域名部分
        NSString *domainString = [email substringFromIndex:range1.location+1];
        NSArray *domainArray   = [domainString componentsSeparatedByString:@"."];

        for(NSString *string in domainArray)
        {
            NSRange rangeOfInavlidChars=[string rangeOfCharacterFromSet:tmpInvalidMutableCharSet];
            if(rangeOfInavlidChars.length !=0 || [string isEqualToString:@""])
                return NO;
        }

        return YES;
    }
    else {
        return NO;
    }
}

输出:

2014-11-19 14:35:10.032 验证邮箱的合法性[14114:60b] ---0--

时间: 2024-08-01 11:39:40

验证邮箱的合法性(此方法比较准确)的相关文章

用两种方法验证邮箱的合法性(最新)

代码: - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. self.title=@"验证邮箱的合法性"; //最全面的验证邮箱的方法,用两种方法一起测试 NSString *email=@"[email protected]"; NSLog(@"---%i--",[self validateEmail:emai

正则表达式验证邮箱的合法性

//利用正则表达式验证邮箱的合法性 -(BOOL)isValidateEmail:(NSString *)email { NSString *emailRegex = @"[A-Z0-9a-z._%+-][email protected][A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"; NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", email

验证邮箱的合法性

代码: - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. self.title=@"验证邮箱的合法性"; NSString *email=@"[email protected]"; NSLog(@"--%i-",[self isValidateEmail:email]); } //用正则表达式 -(BOOL)i

IOS开发中怎样验证邮箱的合法性

文章参考:http://www.codes51.com/article/detail_94157.html 代码: - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. [email protected]"验证邮箱的合法性"; NSString *[email protected]"[email protected]"; NSLog(

php验证邮箱和ip地址方法总汇

在开发中验证邮箱.url.数字是我们常用的一些例子,下面整理了验证邮箱.url.数字程序,大家有兴趣可参考一下. 例子代码如下: public static function isEmail( $email ) { return preg_match("/^([a-z0-9]*[-_\.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,4}([\.][a-z]{2})?$/i" , $email ); } public static

JS验证邮箱格式是否正确 实例代码

如何用js验证邮箱格式是否正确?分享一个例子.代码: /* *验证邮箱格式是否正确 *参数strEmail,需要验证的邮箱 */ function chkEmail(strEmail) { if (!/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(strEmail)) { return false; } else { return true; } } 您可能感兴趣的文章: js正则表达式判断邮箱格式是否正确 js验证邮箱格式 js验证em

用正则表达式验证邮箱与手机号的合法性

正则表达式,又称正规表示法.常规表示法(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式使用单个字符串来描述.匹配一系列符合某个句法规则的字符串. iOS开发中,需要用正则表达式来判断一个字符串是否合法,如: 1,app注册页面中,需要判断用户输入的手机号是否够11位,或者邮箱格式是否正确: 2,意见反馈中,判断邮箱格式是否正确. 验证邮箱格式: + (BOOL)validateEmail:(NSString *)em

js验证邮箱正则表达式,邮箱验证方法

// 验证邮箱函数,正确返回 true,错误返回false function validateEmail(email) { //验证邮箱正则 var re = /^(([^()[\]\\.,;:\[email protected]\"]+(\.[^()[\]\\.,;:\[email protected]\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\

php自带验证邮箱 url ip函数

以前用PHP验证邮箱.URL.IP是否合法都是通过自己写正则来实现,但是有时候脑子发昏,可能会写出一个不是完全正确的正则,导致验证出错,今天发现原来PHP本身自带了验证邮箱.URL.IP是否合法的函数. 主要使用的是filter_var函数. 语法 filter_var(variable, filter, options) 参数 描述 variable 必需.规定要过滤的变量. filter 可选.规定要使用的过滤器的 ID. options 规定包含标志/选项的数组.检查每个过滤器可能的标志和