1.提取URL
NSMutableAttributedString*strMutable=[[NSMutableAttributedString alloc]initWithString:str];
[strMutable addAttribute:NSFontAttributeName value:label.font range:NSMakeRange(0, str.length)];
[strMutable addAttribute:NSForegroundColorAttributeName value:label.textColor range:NSMakeRange(0, str.length)];
NSDataDetector*detect=[[NSDataDetector alloc] initWithTypes:NSTextCheckingTypeLink error:nil];
NSArray*matches=[detect matchesInString:str options:0 range:NSMakeRange(0, str.length)];
for(NSTextCheckingResult*result in matches)
{
if (result.resultType==NSTextCheckingTypeLink) {
[strMutable addAttribute:NSLinkAttributeName value:@"http://www.baidu.com" range:result.range ];
}
}
if ([matches count]>0) {
label.attributedText=strMutable;
}
2.提取字符串
NSRange startRange = [str rangeOfString:@"<"];
NSRange endRange = [str rangeOfString:@">"];
NSRange range = NSMakeRange(startRange.location + startRange.length, endRange.location - startRange.location - startRange.length);
NSString *result = [str substringWithRange:range];
NSMutableAttributedString *str = [[NSMutableAttributedString alloc]initWithString:[NSString stringWithFormat:result]];
// NSRange contentRange = {1,[str length] - 1};
NSRange contentRange = {1,[str length]-1};
[str addAttribute:NSUnderlineStyleAttributeName value:[NSNumber numberWithInteger:NSUnderlineStyleSingle] range:contentRange];
[str addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(1,[str length]-1)];
label.attributedText = str;
网友评论