iOS驗證手機號的有效性

驗證手機號的有效性

概述

驗證手機號的有效性,必須11位,數字1開頭。
通過正則表達式來判斷。

下文中用到的正則表達式字符串爲 "^((1[34578]))\\d{9}$"

Code

源碼下載地址,源碼中包含各種字符串(手機號、郵箱、中文名、身份證號等)校驗方法

+ (BOOL) checkEmptyString:(NSString *) string {

    if (string == nil) return string == nil;

    NSString *newStr = [string stringByReplacingOccurrencesOfString:@" " withString:@""];
    return [newStr isEqualToString:@""];
}
/**
 判斷是否是有效的手機號

 @param mobileNo 手機號碼
 @return 如果是有效的手機號,返回`YES`  否則返回`NO`
 */
+ (BOOL) isVaildMobileNo:(NSString *)mobileNo
{
    if ([MMCheckTool checkEmptyString:mobileNo]) return NO;

    NSString *phoneRegex = @"^((1[34578]))\\d{9}$";

    NSPredicate *phoneTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", phoneRegex];
    return [phoneTest evaluateWithObject:mobileNo];
}

Test

//手機號
{
    BOOL a = [MMCheckTool isVaildMobileNo:@"15121178175"];
    BOOL b = [MMCheckTool isVaildMobileNo:@"151211781755"];
    BOOL c = [MMCheckTool isVaildMobileNo:@"1512117817"];
    BOOL d = [MMCheckTool isVaildMobileNo:@"1234-+_+"];
    BOOL e = [MMCheckTool isVaildMobileNo:@"qwertyuiopq"];
    BOOL f = [MMCheckTool isVaildMobileNo:@""];
    BOOL g = [MMCheckTool isVaildMobileNo:nil];

    NSLog(@"手機號=====》%d%d%d%d%d%d%d",a,b,c,d,e,f,g); //打印結果爲 1000000
}

這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章