現在、リンクを見つけるために NSDataDetectors を使用しています。
-(void)setBodyText
{
NSString* labelText = [[message valueForKey:@"body"]gtm_stringByUnescapingFromHTML];
NSDataDetector *linkDetector = [NSDataDetector dataDetectorWithTypes:NSTextCheckingTypeLink error:nil];
NSArray *matches = [linkDetector matchesInString:labelText options:0 range:NSMakeRange(0, [labelText length])];
for (NSTextCheckingResult *match in matches) {
if ([match resultType] == NSTextCheckingTypeLink) {
NSURL *url = [match URL];
[bodyLabel addCustomLink:url inRange:[match range]];
NSLog(@"found URL: %@", url);
}
}
[bodyLabel setText:labelText];
[Utils alignLabelWithTop:bodyLabel];
}
たとえば、NSDataDetectors を使用して @ を解析するにはどうすればよいですか。
"Hello @sheehan, you are cool"
検出できるようにしてほしい@sheehan
注: NSDataDetector または正規表現のパターン マッチングを使用したいと考えています。カスタム ラベルやコントロールなどはありません。