带有09前缀的11位电话号码的重新表达式

时间:2015-08-25 12:36:07

标签: objective-c regex phone-number

我正在尝试编写一个正则表达式来处理电话号码,该号码以“0”开头,后跟“9”和9位数,可以是0-9之内的任何数字。

if (![self validateAlphabets:self.phoneNumber.text]){
      NSLog(@"Invalid");
   }
else{
      NSLog(@"Valid!");
 }

然后我通过以下方式检查输入验证:

var_dump ($Pux); // output: string (6) "89"

3 个答案:

答案 0 :(得分:2)

我会选择

(0|۰)(9|۹)(\d|[dummy]){9} //<-- \d being any digit

dummy替换为您要支持的字母数字

答案 1 :(得分:1)

您可以尝试使用此正则表达式:

09[0-9]{9}

<强> REGEX DEMO

您可以尝试在函数中测试它,如下所示:

-(BOOL) validateAlphabets: (NSString *)text{      
     NSString *Regex = @"what should be here?!";
     NSPredicate *TestResult = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", Regex];
     if(TestResult evaluateWithObject: text)
     return true;
     else
     return false;
}

答案 2 :(得分:0)

使用NSString方法:

- (BOOL)validateAlphabets: (NSString *)text {
    NSString *regEx = @"09\\d{9}";
    NSRange range = [text rangeOfString:regEx options:NSRegularExpressionSearch];
    return range.location != NSNotFound;
}