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

首頁 > 編程 > regex > 正文

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

2020-01-20 22:02:51
字體:
來源:轉載
供稿:網友

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

//是否是純數字 + (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}$這個正則表達式我測試過了還沒發現有匹配不了的號碼,在這里分享給大家用!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 商南县| 丰宁| 天等县| 莲花县| 通化市| 宁晋县| 沾化县| 格尔木市| 邵武市| 泗水县| 宜昌市| 镇远县| 江门市| 巩留县| 罗定市| 渑池县| 固安县| 开平市| 临漳县| 汉川市| 富民县| 闸北区| 庆云县| 特克斯县| 县级市| 盐津县| 白朗县| 新邵县| 华容县| 南京市| 两当县| 金华市| 杭锦旗| 麻栗坡县| 英山县| 白朗县| 镇康县| 肃北| 乌拉特中旗| 南岸区| 宣城市|