主頁(yè) > 知識(shí)庫(kù) > iOS 正則表達(dá)式判斷純數(shù)字及匹配11位手機(jī)號(hào)碼的方法

iOS 正則表達(dá)式判斷純數(shù)字及匹配11位手機(jī)號(hào)碼的方法

熱門(mén)標(biāo)簽:外呼系統(tǒng)無(wú)呼出路由是什么原因 ai電話機(jī)器人搭建 地圖標(biāo)注教學(xué)點(diǎn) 貴港公司如何申請(qǐng)400電話 梅縣地圖標(biāo)注 甘肅醫(yī)療外呼系統(tǒng)排名 呼叫系統(tǒng)外呼只能兩次 400電話辦理電話辦理 西藏智能外呼系統(tǒng)代理商

第一種使用正則表達(dá)式 判斷

//是否是純數(shù)字 
+ (BOOL)isNumText:(NSString *)str{ 
 NSString * regex  = @"(/^[0-9]*$/)"; 
 NSPredicate * pred  = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex]; 
 BOOL isMatch   = [pred evaluateWithObject:str]; 
 if (isMatch) { 
  return YES; 
 }else{ 
  return NO; 
 } 
}

具體正則對(duì)不對(duì)  還需要大家來(lái)看以下  

第二種 系統(tǒng)源生的 

我推薦第二種  

- (NSString *) trimming { 
 return [self stringByTrimmingCharactersInSet: [NSCharacterSet whitespaceCharacterSet]]; 
} 
//判斷是不是純數(shù)字 
 [NSCharacterSet decimalDigitCharacterSet]; 
 if ([[textField.text stringByTrimmingCharactersInSet: [NSCharacterSet decimalDigitCharacterSet]]trimming].length >0) { 
  DLog(@"不是純數(shù)字"); 
 }else{ 
  DLog(@"純數(shù)字!"); 
 } 

最近在做一個(gè)即時(shí)通訊的項(xiàng)目, 首先是注冊(cè)登錄界面, 項(xiàng)目需求是通過(guò)用戶輸入的手機(jī)號(hào)碼獲取一個(gè)4位數(shù)的驗(yàn)證碼來(lái)完成注冊(cè),那么, 問(wèn)題來(lái)了?

如何判斷用戶輸入的手機(jī)號(hào)碼是合法的正確的11位手機(jī)號(hào)碼呢?(這些簡(jiǎn)單的問(wèn)題就在前端判斷好了再post給后臺(tái) ,沒(méi)必要把各種沒(méi)用的數(shù)據(jù)都post給后臺(tái))

判斷手機(jī)號(hào)碼是否正確的方法很多,我是用正則表達(dá)式來(lái)完成匹配的,廢話不多說(shuō),直接上代碼:

//正則表達(dá)式匹配11位手機(jī)號(hào)碼 
 NSString *regex = @"^((13[0-9])|(15[^4,\\D])|(18[0,0-9]))\\d{8}$"; 
 NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex]; 
 BOOL isMatch = [pred evaluateWithObject:_telField.text]; 
if(isMatch) { //有效手機(jī)號(hào) 
}else//無(wú)效手機(jī)號(hào) 
 { 
   if (ios7) { 
    UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:nil message:@"無(wú)效的手機(jī)號(hào)碼,請(qǐng)重新輸入..." delegate:self cancelButtonTitle:nil otherButtonTitles:@"確定", nil nil]; 
    alertView.tag = 104; 
    [alertView show]; 
   }else 
   { 
    UIAlertController*alertController = [UIAlertController alertControllerWithTitle:nil message:@"無(wú)效的手機(jī)號(hào)碼,請(qǐng)重新輸入..." preferredStyle:UIAlertControllerStyleAlert]; 
    UIAlertAction *otherAction = [UIAlertAction actionWithTitle:@"確定" style:UIAlertActionStyleDefault handler:^(UIAlertAction*action) { 
     [_telField selectAll:self]; 
    }]; 
    [alertController addAction:otherAction]; 
    [self presentViewController:alertController animated:YES completion:nil]; 
   } 
  } 
 } 

聯(lián)通,移動(dòng)和電信每年都會(huì)添加新的號(hào)碼,所以匹配電話號(hào)碼的正則表達(dá)式也要年年更新.

^((13[0-9])|(15[^4,\\D])|(18[0,0-9]))\\d{8}$這個(gè)正則表達(dá)式我測(cè)試過(guò)了還沒(méi)發(fā)現(xiàn)有匹配不了的號(hào)碼,在這里分享給大家用!

您可能感興趣的文章:
  • iOS App開(kāi)發(fā)中Objective-C使用正則表達(dá)式進(jìn)行匹配的方法
  • 正則表達(dá)式在IOS中的應(yīng)用及IOS中三種正則表達(dá)式的使用與比較
  • iOS 正則表達(dá)式判斷手機(jī)號(hào)碼、固話
  • IOS開(kāi)發(fā)常用的正則表達(dá)式
  • iOS 中使用正則表達(dá)式判斷身份證格式及銀行卡號(hào)格式是否正確(推薦)
  • iOS中使用正則表達(dá)式NSRegularExpression 來(lái)驗(yàn)證textfiled輸入的內(nèi)容
  • iOS正則表達(dá)式驗(yàn)證手機(jī)號(hào)、郵箱、身份證號(hào)等
  • ios利用正則表達(dá)式判斷手機(jī)號(hào)碼格式是否正確的實(shí)例
  • Objective-C中利用正則去除非數(shù)字字母漢字方法實(shí)例

標(biāo)簽:湖州 哈密 泰安 本溪 大興安嶺 涼山 常州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《iOS 正則表達(dá)式判斷純數(shù)字及匹配11位手機(jī)號(hào)碼的方法》,本文關(guān)鍵詞  iOS,正則,表達(dá)式,判斷,純,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《iOS 正則表達(dá)式判斷純數(shù)字及匹配11位手機(jī)號(hào)碼的方法》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于iOS 正則表達(dá)式判斷純數(shù)字及匹配11位手機(jī)號(hào)碼的方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章