gpt4 book ai didi

iPhone简单电话号码验证

转载 作者:可可西里 更新时间:2023-11-01 03:23:15 25 4
gpt4 key购买 nike

我在 stackoverflow 上找到了适用于 iphone 的各种电话号码验证,但似乎都没有验证它们似乎只是更改了格式。示例 Phone number formatting .

目标:正在通过警报输入此数字。北美有或没有破折号。

所以有一些代码,但任何想法都无效。

- (void)textFieldDidEndEditing:(UITextField *)textField {

NSString *str=@"^\\+(?:[0-9] ?){6,14}[0-9]$";
NSPredicate *no=[NSPredicate predicateWithFormat:@"SELF MATCHES %@",str];
if([no evaluateWithObject:textField.text]==NO)
{

UIAlertView *alert=[[UIAlertView alloc]initWithTitle:@"Warning" message:@"Please Enter correct contact no." delegate:self cancelButtonTitle:@"ok" otherButtonTitles:nil];

[alert show];
[alert release];

}
else{
NSString *textValue = textField.text;
NSLog(@"Value: %@", textValue);
}
}

最佳答案

编辑:我再次阅读了问题,发现您想要验证,而不是突出显示电话号码,所以我将 NSDataDetector 部分上移了。

您可以使用 NSDataDetector(它是 NSRegularExpression 的专门子类)在 NSString 中搜索电话号码(这使用 iPhone 的默认的电话号码检测算法,我相信)。

NSDataDetector *detector = [NSDataDetector dataDetectorWithTypes:NSTextCheckingTypePhoneNumber
error:&error];
NSUInteger numberOfMatches = [detector numberOfMatchesInString:string
options:0
range:NSMakeRange(0, [string length])];

如果您使用 UITextView(但可能不像您在此处使用的那样使用 UITextField),您可以使用 iPhone 的突出显示电话号码通过设置其 dataDetectorTypes 属性的默认电话号码检测算法:

textView.dataDetectorTypes = UIDataDetectorTypePhoneNumber;

有关其他类型的数据检测器,请参阅 UIDataDetectorTypes

关于iPhone简单电话号码验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7180847/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com