正則驗證郵箱和電話號碼

號碼驗證

// ???NSString *numStr = @"12345678901";

// ???NSLog(@"%@",[self isElevenNumber:numStr] ? @"是11位數(shù)字" : @"不是");

// ???NSString *email = @"123488555@qq.com";

// ???NSLog(@"%@",[self isEvaluateWithEmail:email] ? @"是" :@"不是");

NSString *number =@"11146299420";

NSLog(@"%@",[self isElevenNumber:number] ?@"是":@"不是");

NSLog(@"%@",[self isEvaluaWithPhoneNumber:number] ?@"是":@"不是");

}

- (BOOL)isEvaluaWithPhoneNumber:(NSString*)number {

NSString *MOBILE =@"^1(3[0-9]|4[57]|5[0-35-9]|8[0-9]|70)\\d{8}$";

NSString *CM =@"(^1(3[4-9]|4[7]|5[0-27-9]|7[8]|8[2-478])\\d{8}$)|(^1705\\d{7}$)";

NSString *CU =@"(^1(3[0-2]|4[5]|5[56]|7[6]|8[56])\\d{8}$)|(^1709\\d{7}$)";

NSString *CT =@"(^1(33|53|77|8[019])\\d{8}$)|(^1700\\d{7}$)";

if(![self isElevenNumber:number]) {

return NO;

}

BOOL isMobile = [self evaluateWithRegularExpression:MOBILE checkString:number];

BOOL isCM = [self evaluateWithRegularExpression:CM checkString:number];

BOOL isCU = [self evaluateWithRegularExpression:CU checkString:number];

BOOL isCT = [self evaluateWithRegularExpression:CT checkString:number];

if(isMobile) {

if(isCM) {

NSLog(@"中國移動");

}elseif(isCU) {

NSLog(@"中國聯(lián)通");

}elseif(isCT){

NSLog(@"中國電信");

}

return YES;

}else{

NSLog(@"未知服務(wù)商");

return NO;

}

}

//驗證郵箱

- (BOOL)isEvaluateWithEmail:(NSString *)email {

NSString *regular =@"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{1,5}";

return[self evaluateWithRegularExpression:regular checkString:email];

}

//是否符合正則

- (BOOL)evaluateWithRegularExpression:(NSString *)regular checkString:(NSString *)checkStr {

NSPredicate *regularPre = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",regular];

BOOL isYes = [regularPre evaluateWithObject:checkStr];

returnis Yes;

}

//是否是11位數(shù)字

- (BOOL)isElevenNumber:(NSString *)numStr {

//[0-9]{11,11}

NSString *regularStr =@"[0-9]{11,11}";

//MATCHES符合正則表達式

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",regularStr];

//是否符合正則

BOOL isYes = [predicate evaluateWithObject:numStr];

return isYes;

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市婆咸,隨后出現(xiàn)的幾起案子芝此,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,039評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件每庆,死亡現(xiàn)場離奇詭異痢士,居然都是意外死亡,警方通過查閱死者的電腦和手機鳞贷,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,426評論 3 395
  • 文/潘曉璐 我一進店門坯汤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人搀愧,你說我怎么就攤上這事惰聂。” “怎么了咱筛?”我有些...
    開封第一講書人閱讀 165,417評論 0 356
  • 文/不壞的土叔 我叫張陵搓幌,是天一觀的道長。 經(jīng)常有香客問我迅箩,道長溉愁,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,868評論 1 295
  • 正文 為了忘掉前任饲趋,我火速辦了婚禮拐揭,結(jié)果婚禮上撤蟆,老公的妹妹穿的比我還像新娘。我一直安慰自己堂污,他們只是感情好家肯,可當(dāng)我...
    茶點故事閱讀 67,892評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著盟猖,像睡著了一般讨衣。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上式镐,一...
    開封第一講書人閱讀 51,692評論 1 305
  • 那天反镇,我揣著相機與錄音,去河邊找鬼碟案。 笑死愿险,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的价说。 我是一名探鬼主播辆亏,決...
    沈念sama閱讀 40,416評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼鳖目!你這毒婦竟也來了扮叨?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,326評論 0 276
  • 序言:老撾萬榮一對情侶失蹤领迈,失蹤者是張志新(化名)和其女友劉穎彻磁,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體狸捅,經(jīng)...
    沈念sama閱讀 45,782評論 1 316
  • 正文 獨居荒郊野嶺守林人離奇死亡衷蜓,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,957評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了尘喝。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片磁浇。...
    茶點故事閱讀 40,102評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖朽褪,靈堂內(nèi)的尸體忽然破棺而出置吓,到底是詐尸還是另有隱情,我是刑警寧澤缔赠,帶...
    沈念sama閱讀 35,790評論 5 346
  • 正文 年R本政府宣布衍锚,位于F島的核電站,受9級特大地震影響嗤堰,放射性物質(zhì)發(fā)生泄漏戴质。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,442評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望置森。 院中可真熱鬧斗埂,春花似錦符糊、人聲如沸凫海。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,996評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽行贪。三九已至,卻和暖如春模闲,著一層夾襖步出監(jiān)牢的瞬間建瘫,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,113評論 1 272
  • 我被黑心中介騙來泰國打工尸折, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留啰脚,地道東北人。 一個月前我還...
    沈念sama閱讀 48,332評論 3 373
  • 正文 我出身青樓实夹,卻偏偏與公主長得像橄浓,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子亮航,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,044評論 2 355

推薦閱讀更多精彩內(nèi)容