标签:
新建一个字符串分类:NSString(Check),定义类方法更方便
.h文件
@interface NSString (Check) //验证用户名输入时必须以字母开头 + (BOOL)checkUserName:(NSString *)userName showWainingInView:(UIView *)view; //验证用户名输入时必须为手机号 + (BOOL)checkTelPhone:(NSString *)telPhone showWainingInView:(UIView *)view; //验证用户名是否为普通账号 + (BOOL)isUserName:(NSString *)userName; //验证用户名是否为手机号 + (BOOL)isTelPhone:(NSString *)telPhone; @end
.m文件
#import "NSString+Check.h" @implementation NSString (Check) //验证用户名输入时必须以字母开头 + (BOOL)checkUserName:(NSString *)userName showWainingInView:(UIView *)view { //判断是否以字母开头 NSString *regex = @"^[A-Za-z][A-Za-z0-9]*$"; NSPredicate *pre = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex]; BOOL isMatch = [pre evaluateWithObject:userName]; if (!isMatch) { [MBProgressHUD showError:@"用户名必须以字母开头" toView:view]; dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ [MBProgressHUD hideHUDForView:view]; }); return NO; } return YES; } //验证用户名输入时必须为手机号 + (BOOL)checkTelPhone:(NSString *)telPhone showWainingInView:(UIView *)view { NSString *regex = @"^[1][358][0-9]{9}$"; NSPredicate *pre = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex]; BOOL isMatch = [pre evaluateWithObject:telPhone]; if (!isMatch) { [MBProgressHUD showError:@"手机号格式不正确" toView:view]; dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ [MBProgressHUD hideHUDForView:view]; }); return NO; } return YES; } //验证用户名是否为普通账号 + (BOOL)isUserName:(NSString *)userName{ NSString *regex = @"^[A-Za-z][A-Za-z0-9]*$"; NSPredicate *pre = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex]; BOOL isMatch = [pre evaluateWithObject:userName]; if (!isMatch) { return NO; } return YES; } //验证用户名是否为手机号 + (BOOL)isTelPhone:(NSString *)telPhone{ NSString *regex = @"^[1][358][0-9]{9}$"; NSPredicate *pre = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex]; BOOL isMatch = [pre evaluateWithObject:telPhone]; if (!isMatch) { return NO; } return YES; } @end
iOS:判断用户名是否以字母开头、手机号输入是否正确的正则表达式
标签:
原文地址:http://www.cnblogs.com/XYQ-208910/p/5440979.html