#pragma 正則匹配手機號 + (BOOL)checkTelNumber:(NSString *) telNumber { NSString *pattern = @^1+[3578]+\d{9}; NSPredicate *pred = [NSPredicate predicateWithFormat:@SELF MATCHES %@, pattern]; BOOL isMatch = [pred evaluateWithObject:telNumber]; return isMatch; } #pragma 正則匹配用戶密碼6-18位數字和字母組合 + (BOOL)checkPassword:(NSString *) password { NSString *pattern = @^(?![0-9]+$)(?![a-zA-Z]+$)[a-zA-Z0-9]{6,18}; NSPredicate *pred = [NSPredicate predicateWithFormat:@SELF MATCHES %@, pattern]; BOOL isMatch = [pred evaluateWithObject:password]; return isMatch; } #pragma 正則匹配用戶姓名,20位的中文或英文 + (BOOL)checkUserName : (NSString *) userName { NSString *pattern = @^[a-zA-Z一-龥]{1,20}; NSPredicate *pred = [NSPredicate predicateWithFormat:@SELF MATCHES %@, pattern]; BOOL isMatch = [pred evaluateWithObject:userName]; return isMatch; } #pragma 正則匹配用戶身份證號15或18位 + (BOOL)checkUserIdCard: (NSString *) idCard { NSString *pattern = @(^[0-9]{15}$)|([0-9]{17}([0-9]|X)$); NSPredicate *pred = [NSPredicate predicateWithFormat:@SELF MATCHES %@, pattern]; BOOL isMatch = [pred evaluateWithObject:idCard]; return isMatch; } #pragma 正則匹員工號,12位的數字 + (BOOL)checkEmployeeNumber : (NSString *) number { NSString *pattern = @^[0-9]{12}; NSPredicate *pred = [NSPredicate predicateWithFormat:@SELF MATCHES %@, pattern]; BOOL isMatch = [pred evaluateWithObject:number]; return isMatch; } #pragma 正則匹配URL + (BOOL)checkURL : (NSString *) url { NSString *pattern = @^[0-9A-Za-z]{1,50}; NSPredicate *pred = [NSPredicate predicateWithFormat:@SELF MATCHES %@, pattern]; BOOL isMatch = [pred evaluateWithObject:url]; return isMatch; }