首页 > 移动平台 > 详细

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

时间:2016-04-28 00:31:00      阅读:249      评论: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
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!