你如何从NSTextCheckingResult回到原来的字符串?

时间:2011-08-21 22:49:04

标签: objective-c

我知道在NSTextCheckingResult上返回了NSURL,但是如何返回到原始字符串。 NSURL格式化网址,除非此处有一个方法可以让您回到原始网址。

NSError *error = nil; 
NSDataDetector *detector = [NSDataDetector dataDetectorWithTypes:
                                (NSTextCheckingTypeLink | NSTextCheckingTypePhoneNumber)
                                                               error:&error];


  [detector enumerateMatchesInString:html 
        options:0 
        range:NSMakeRange(0, [html length]) 
        usingBlock:^(NSTextCheckingResult *result, NSMatchingFlags flags, BOOL *stop) {

           if (result.resultType == NSTextCheckingTypeLink) {
                 NSLog(@"original string is %@", ???);
           }

        }
    }];

1 个答案:

答案 0 :(得分:2)

尝试:

       if (result.resultType == NSTextCheckingTypeLink) 
       {
           NSLog(@"original string is %@", 
               [result.URL isFileURL] ? [result.URL path] : [result.URL absoluteString]);
       }

或者获取有关网址的任何内容。