如何使用NSDataDetector验证电话号码。在我的项目中,高于14文本长度的任何内容也都有效,但NSDataDetector没有检测到它。
我正在使用以下stackoverflow帖子中的代码:NSTextCheckingResult for phone numbers
答案 0 :(得分:1)
您无法仅使用其NSDataDetector
[10_7,4_0]
因此,简单而正确的方式来验证电话号码,而不是NSDataDetector
NSString *string =@"121453315";
NSString *phoneRegex = @"^((\\+)|(00))[0-9]{6,14}$";
NSPredicate *phoneTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", phoneRegex];
BOOL phoneValidates = [phoneTest evaluateWithObject:string];
答案 1 :(得分:0)
将NSDataDetector用于常规电话号码,并添加一个特殊的正则表达式,仅匹配您的应用程序需要添加缺失结果的14位+电话号码。对于较短的电话号码,NSDataDetector将比您可能编写的任何正则表达式准确得多......