国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Regex > 正文

iOS 正則表達式判斷純數字及匹配11位手機號碼的方法

2020-03-16 20:55:15
字體:
來源:轉載
供稿:網友

第一種使用正則表達式 判斷

//是否是純數字 + (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;  } }

具體正則對不對  還需要大家來看以下  

第二種 系統源生的 

我推薦第二種  

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

最近在做一個即時通訊的項目, 首先是注冊登錄界面, 項目需求是通過用戶輸入的手機號碼獲取一個4位數的驗證碼來完成注冊,那么, 問題來了?

如何判斷用戶輸入的手機號碼是合法的正確的11位手機號碼呢?(這些簡單的問題就在前端判斷好了再post給后臺 ,沒必要把各種沒用的數據都post給后臺)

判斷手機號碼是否正確的方法很多,我是用正則表達式來完成匹配的,廢話不多說,直接上代碼:

//正則表達式匹配11位手機號碼  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) { //有效手機號 }else//無效手機號  {    if (ios7) {     UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:nil message:@"無效的手機號碼,請重新輸入..." delegate:self cancelButtonTitle:nil otherButtonTitles:@"確定", nil nil];     alertView.tag = 104;     [alertView show];    }else    {     UIAlertController*alertController = [UIAlertController alertControllerWithTitle:nil message:@"無效的手機號碼,請重新輸入..." preferredStyle:UIAlertControllerStyleAlert];     UIAlertAction *otherAction = [UIAlertAction actionWithTitle:@"確定" style:UIAlertActionStyleDefault handler:^(UIAlertAction*action) {      [_telField selectAll:self];     }];     [alertController addAction:otherAction];     [self presentViewController:alertController animated:YES completion:nil];    }   }  } 

聯通,移動和電信每年都會添加新的號碼,所以匹配電話號碼的正則表達式也要年年更新.

^((13[0-9])|(15[^4,//D])|(18[0,0-9]))//d{8}$這個正則表達式我測試過了還沒發現有匹配不了的號碼,在這里分享給大家用!


注:相關教程知識閱讀請移步到正則表達式頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 山阳县| 罗田县| 石渠县| 抚顺市| 平南县| 南宁市| 定陶县| 丰台区| 宜州市| 布尔津县| 体育| 长春市| 绍兴市| 道真| 滦南县| 静乐县| 高清| 澎湖县| 柞水县| 扶风县| 汕尾市| 饶河县| 湾仔区| 合江县| 通化县| 高唐县| 永年县| 武冈市| 霸州市| 博兴县| 临桂县| 正阳县| 深泽县| 肇源县| 含山县| 米易县| 刚察县| 正安县| 四平市| 沙洋县| 基隆市|