美文网首页
iOS之文本中所有指定关键字改变颜色

iOS之文本中所有指定关键字改变颜色

作者: zwing | 来源:发表于2019-11-29 16:28 被阅读0次

    开发中会遇到一段文字中所有指定关键字改变颜色的需求,直接上代码:

    - (NSAttributedString *)matchingWithKeyword:(NSString *)keyword inResultString:(NSString *)resultSting color:(UIColor *)color{
        // 创建富文本
        NSMutableAttributedString *newString = [[NSMutableAttributedString alloc] initWithString:resultSting];
        
        // 正则检索
        NSRegularExpression *regex = [[NSRegularExpression alloc]initWithPattern:keyword options:NSRegularExpressionCaseInsensitive error:nil];
        [regex enumerateMatchesInString:resultSting options:NSMatchingReportProgress range:NSMakeRange(0, resultSting.length) usingBlock:^(NSTextCheckingResult *result, NSMatchingFlags flags, BOOL *stop) {
            
            [newString addAttribute:(NSString*)NSForegroundColorAttributeName
                              value:color
                              range:result.range];
        }];
        return newString;
    }
    

    效果图

    我喜欢你.png

    相关文章

      网友评论

          本文标题:iOS之文本中所有指定关键字改变颜色

          本文链接:https://www.haomeiwen.com/subject/wwegwctx.html