ios - NSDataDetector 类型 NSTextCheckingTypeTransitInformation - 它可用于 iOS 吗?

标签 ios objective-c nsdatadetector datadetectortypes

我使用以下代码发送最近的 UPS 跟踪号(字符串),以查看 NSDataDetector 是否会将跟踪号检测为 NSTextCheckingTypeTransitInformation 类型的匹配项。该方法返回零结果。当我在 Notes iOS 应用程序中输入相同的跟踪编号时,它会为我提供查看跟踪链接(“跟踪货件”)的选项。

- (void)checkTrackingNumber:(NSString*)trackingNumber {

    NSError *error = nil;
    NSDataDetector *detector = [NSDataDetector dataDetectorWithTypes:NSTextCheckingTypeTransitInformation error:&error];
    [detector enumerateMatchesInString:trackingNumber
                               options:0
                                 range:NSMakeRange(0, [trackingNumber length])
                            usingBlock:^(NSTextCheckingResult *result, NSMatchingFlags flags, BOOL *stop) {
                                // Do Something Here
                                NSLog(@"result.URL is: %@",result.URL);
                            }];
}

是否存在某些原因导致上述代码无法在 iOS 应用中用于有效跟踪号?

最佳答案

它检查 NSTextCheckingAirlineKey 和 NSTextCheckingFlightKey。当您使用 NSTextCheckingTypeTransitInformation 时,它不会检查 UPS 跟踪号

关于ios - NSDataDetector 类型 NSTextCheckingTypeTransitInformation - 它可用于 iOS 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30810637/

相关文章:

iphone - 使用 NSDataDetector 检查电子邮件

iphone - iOS 256 色 (VGA) 到 RGB

ios - iOS中的SIM卡更改检测

ios - 检测 UITableViewCell subview 内的触摸

ios - 从空 Swift 数组中获取对象类型

ios - 无法使用 openURL 打开使用 NSDataDetector 检测到的电话号码

ios - 如何在 UITextView 中禁用放大

iphone - 如何使用ASIHttpRequest创建请求,如下所示?

ios - 在 Xcode 4.x 中编译大型源文件(10k+ 行)

ios - 如何在初始化后更改 UIPickerView 中的行数