码迷,mamicode.com
首页 > 移动开发 > 详细

iOS:判断用户名是否以字母开头、手机号输入是否正确的正则表达式

时间:2016-04-28 00:33:59      阅读:570      评论:0      收藏:0      [点我收藏+]

标签:

新建一个字符串分类: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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!