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

时间:2015-06-12 19:17:06

标签: 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应用中使用有效的跟踪号?

1 个答案:

答案 0 :(得分:1)

它会检查NSTextCheckingAirlineKey和NSTextCheckingFlightKey。使用NSTextCheckingTypeTransitInformation时的信息,它不会检查UPS跟踪号