iOS 验证手机号码和电子邮箱

//验证手机号码

+ (BOOL)validateMobile:(NSString*)mobile {

    if(mobile.length==0) {

        NSString *message = RCDLocalizedString(@"mobile_number_unempty");

        [self showAlertController:message cancelTitle:RCDLocalizedString(@"confirm")];

        returnNO;

    }

    //手机号以13, 15,18开头,八个 \d 数字字符

    NSString *phoneRegex = @"^((13[0-9])|(15[^4,\\D])|(18[0,0-9]))\\d{8}$";

    NSPredicate *phoneTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", phoneRegex];

    if(![phoneTestevaluateWithObject:mobile]) {

        NSString *message = RCDLocalizedString(@"mobile_number_unempty");

        [self showAlertController:message cancelTitle:RCDLocalizedString(@"confirm")];

        returnNO;

    }

    return YES;

}

//验证电子邮箱

+ (BOOL)validateEmail:(NSString*)email {

    if(email.length==0) {

        returnNO;

    }

    NSString *expression = [NSString stringWithFormat:@"^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$"];

    NSError*error =NULL;

    NSRegularExpression *regex = [[NSRegularExpression alloc] initWithPattern:expression

                                                                      options:NSRegularExpressionCaseInsensitive

                                                                        error:&error];

    NSTextCheckingResult *match = [regex firstMatchInString:email options:0 range:NSMakeRange(0, [email length])];

    if(!match) {

        returnNO;

    }

    return YES;

}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容