正则判断手机、密码、邮箱

来源:互联网 发布:矩阵范数不等式证明 编辑:程序博客网 时间:2024/05/17 00:03
#import <Foundation/Foundation.h>@interface NSString (checkNumOrPW)//正则匹配手机号+ (BOOL)checkTelNumber:(NSString *) telNumber;//正则匹配用户密码6-20位数字、字母和下划线三选二组合+ (BOOL)checkPassword:(NSString *) password;//正则检测邮箱地址+ (BOOL)checkValidateEmail:(NSString *)email;@end
#import "NSString+checkNumOrPW.h"@implementation NSString (checkNumOrPW)//正则匹配手机号+ (BOOL)checkTelNumber:(NSString *) telNumber {    NSString *pattern = @"^1(3[0-9]|5[0-35-9]|8[025-9]|70|77)\\d{8}$";    NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", pattern];    BOOL isMatch = [pred evaluateWithObject:telNumber];    return isMatch;}//正则匹配用户密码6-20位数字、字母和下划线三选二组合+ (BOOL)checkPassword:(NSString *) password {    NSString *pattern = @"^(?![0-9]+$)(?![a-zA-Z]+$)(?!_+$)[a-zA-Z0-9_]{6,20}";    NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", pattern];    BOOL isMatch = [pred evaluateWithObject:password];    return isMatch;}+ (BOOL)checkValidateEmail:(NSString *)email {    NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";    NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];    BOOL isMatch =[emailTest evaluateWithObject:email];    return isMatch;}@end
0 0
原创粉丝点击