【发布时间】:2013-12-12 17:40:58
【问题描述】:
我必须通过以下 regEx 验证电话号码。
//**regExpPattern** : "+?[0-9]{0,3}( |-)?[0-9]{4}( |-)?[0-9]{3}( |-)?[0-9]{3}"
-(BOOL) textFieldValidation:(NSString *)checkString withRegEx:(NSString*)regExpPattern
{
NSString *stringToValidate = [[NSString alloc]initWithString:checkString];
NSString *pattern = [[NSString alloc]initWithString:regExpPattern]
NSLog(@"%@ %@",checkString,regExpPattern);
NSPredicate *myTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",pattern];
if ([myTest evaluateWithObject:stringToValidate]){
return YES;
}
return FALSE;
}
我收到以下异常:
'NSInvalidArgumentException' '无法进行正则表达式匹配,原因:(无法打开模式 U_REGEX_RULE_SYNTAX(字符串 6789054321,模式 +[?][0-9]{0,3}(|-)?[0-9]{4}( |-)?[0-9]{3}( |-)?[0-9]{3}, case 0, canon 0))'
【问题讨论】:
标签: ios objective-c regex