iOS开发用正则表达式验证身份证,邮箱,手机号等

#pragma mark - 手机号识别

- (BOOL)isMobileNumber:(NSString *)phone

{

    NSString * MOBILE = @"^(0|86|17951)?(13[0-9]|15[012356789]|17[678]|18[0-9]|14[57])[0-9]{8}$";

    NSPredicate *regextestmobile = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", MOBILE];

    if ([regextestmobile evaluateWithObject:phone] == YES)

    {

        return YES;

    }

    else

    {

        return NO;

    }

}

#pragma mark - 身份证识别


- (BOOL) isValidateIdentityCard: (NSString *)identityCard

{

    BOOL flag;

    if (identityCard.length <= 0) {

        flag = NO;

        return flag;

    }

    NSString *regex2 = @"^(\\d{14}|\\d{17})(\\d|[xX])$";

    NSPredicate *identityCardPredicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",regex2];

    return [identityCardPredicate evaluateWithObject:identityCard];

}

#pragma mark - 车牌号识别

- (BOOL)isCarLicenseNum:(NSString *)lNum

{

    NSString * MOBILE = @"^[||||||||||||||||||||||||||||||]{1}[a-zA-Z]{1}[a-zA-Z_0-9]{5}$";

    NSPredicate *regextestmobile = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", MOBILE];

    if ([regextestmobile evaluateWithObject:lNum] == YES)

    {

        return YES;

    }

    else

    {

        return NO;

    }

}

#pragma mark - 邮箱识别

- (BOOL) isValidateEmail:(NSString *)email

{

    NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";

    NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];

    return [emailTest evaluateWithObject:email];

}

你可能感兴趣的:(iOS开发用正则表达式验证身份证,邮箱,手机号等)