iOS OC匹配多个文字修改颜色和字号

devtools/2025/3/18 14:43:49/
1、传入字符串数组,通过NSMutableAttributedString修改匹配文字

可以根据需要搞成匹配单个字符串

- (NSAttributedString *)applyFontSizeToText:(NSString *)text matchStrings:(NSArray<NSString *> *)matchStrings {NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:text];UIFont *font = [UIFont systemFontOfSize:16]; // 目标字体大小for (NSString *match in matchStrings) {NSRange searchRange = NSMakeRange(0, text.length);NSRange foundRange;while (searchRange.location < text.length &&(foundRange = [text rangeOfString:match options:NSCaseInsensitiveSearch range:searchRange]).location != NSNotFound) {[attributedString addAttribute:NSFontAttributeName value:font range:foundRange];[attributedString addAttribute:NSForegroundColorAttributeName value:HexColor(@"#9B9B9B") range:foundRange];// 更新搜索范围,避免死循环searchRange = NSMakeRange(NSMaxRange(foundRange), text.length - NSMaxRange(foundRange));}}return attributedString;
}
调用方法:
NSArray *matchArray = @[@"次/分钟", @"次", @"mmhg", @"小时", @"分钟"];
if (dataString.length != 0) {//避免空字符串self.dataLabel.attributedText = [self applyFontSizeToText:self.dataLabel.text matchStrings:matchArray];
}


http://www.ppmy.cn/devtools/168078.html

相关文章

【Qt】QWidget属性介绍

&#x1f3e0;个人主页&#xff1a;Yui_ &#x1f351;操作环境&#xff1a;Qt Creator &#x1f680;所属专栏&#xff1a;Qt 文章目录 前言1. enabled属性2.geometry属性2.1 改变控件位置2.2 女神表白程序2.3 知识补充——window frame 3. windowsTitle属性4. windowIcon属性…

基于机器学习的睡眠障碍预测模型对比分析

1、研究背景 2、数据概述 3. 数据可视化分析 (1) 各职业的平均睡眠时长 (2) BMI 分布 (3) 血压收缩压与舒张压的关系 (4) 每日步数的分布 (5) 睡眠质量的分布 4. 机器学习模型对比 (1) 决策树模型

Word 小黑第20套

对应大猫21 特定一页设为横向 上下用分页符

LLM学习之路-01-第一章-预训练/大模型分布式训练并行技术(一)概述

大模型分布式训练并行技术&#xff08;一&#xff09;综述 引言 为了训练最大的 Llama 3 模型&#xff0c;Meta 结合了三种并行化方式&#xff1a;数据并行化、模型并行化和管道并行化。当同时在 16K GPU 上进行训练时&#xff0c;他们最高效的实现实现了每 GPU 超过 400 TFLO…

ST的全新STM32U3微控制器(MCU)简析

一 概述 意法半导体在之前的STM32型号中引领了超低功耗&#xff08;ULP&#xff09;MCU的步伐&#xff0c;现在又推出了新的STM32U3系列&#xff0c;将ULP性能提升到一个新的水平。凭借先进的节能芯片设计&#xff0c;通过人工智能增强工具进行微调&#xff0c;以及运行频率高…

【为什么游戏能使人上瘾】

为什么游戏能使人上瘾&#xff0c;而工作不会&#xff1f;——从神经科学、心理学与行为设计学拆解 一、多巴胺回路的“即时收割” vs “延迟满足” 游戏的神经劫持机制 即时反馈闭环&#xff1a;游戏设计遵循“行为→奖励→强化”的秒级循环。例如&#xff1a; • 击杀小怪→金…

PyTorch使用-张量的创建

文章目录 张量的创建1. 安装 PyTorch2. 基本创建方式2.1 torch.tensor 根据指定数据创建张量2.2. torch.Tensor 根据形状创建张量, 其也可用来创建指定数据的张量2.3. 指定类型的张量创建2.3.1. torch.IntTensor&#xff1a;创建整数类型张量2.3.2. torch.FloatTensor&#xff…

Qt 通过MSVC编译运行项目

第一步下载Qt 把Qt能选的插件都选上&#xff0c;有的是连接数据库必须得插件&#xff0c;有的是做图表必须得插件&#xff0c;有的是运行MSVC必须得插件&#xff0c;能选尽量都选上。 第二步安装VS2017&#xff0c;当然我们安装2017的目的主要是用C的编译器&#xff0c;这里提…