我使用以下代码,发送最近的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应用中使用有效的跟踪号?
答案 0 :(得分:1)
它会检查NSTextCheckingAirlineKey和NSTextCheckingFlightKey。使用NSTextCheckingTypeTransitInformation时的信息,它不会检查UPS跟踪号