
前言字符串转换和替换是文本处理的基础操作如大小写转换、首字母大写、字符串替换等。pura/harmony-utils的StrUtil封装了丰富的字符串转换方法。本文将从API说明、代码实战、进阶用法、常见问题等多个维度进行全面讲解帮助开发者快速掌握并应用到实际项目中。一、StrUtil转换核心APIStrUtil提供了以下字符串转换方法方法说明返回类型使用场景toUpperCase(str)转大写string大写转换toLowerCase(str)转小写string小写转换capitalize(str)首字母大写string标题格式reverse(str)反转字符串string特殊处理replace(str, old, new)替换字符串string文本替换replaceAll(str, regex, new)正则替换string批量替换1.1 核心特性简洁易用封装复杂逻辑为一行调用降低使用门槛类型安全完整的TypeScript类型定义编译期即可发现错误异常处理内置异常捕获机制避免运行时崩溃丰富方法覆盖大小写、首字母、反转、替换等场景1.2 转换方法对照方法输入输出说明toUpperCase‘hello’‘HELLO’全部大写toLowerCase‘WORLD’‘world’全部小写capitalize‘harmony’‘Harmony’首字母大写reverse‘abc’‘cba’字符反转二、完整使用步骤2.1 安装依赖ohpminstallpura/harmony-utils2.2 大小写转换import{StrUtil}frompura/harmony-utils;Button(大小写转换).width(100%).onClick((){try{letupperStrUtil.toUpperCase(hello);letlowerStrUtil.toLowerCase(WORLD);letcapStrUtil.capitalize(harmony);this.result大写:${upper}\n小写:${lower}\n首字母大写:${cap};}catch(e){this.result异常: e;}})2.3 字符串替换Button(字符串替换).width(100%).onClick((){try{letreplacedStrUtil.replace(hello world,world,harmony);letreversedStrUtil.reverse(hello);this.result替换:${replaced}\n反转:${reversed};}catch(e){this.result异常: e;}})三、完整页面示例import{StrUtil}frompura/harmony-utils;EntryComponentstruct StrConvertDemo{Stateresult:string;build(){Column({space:12}){Button(大小写转换).width(100%).onClick((){this.result大写:${StrUtil.toUpperCase(hello)}\n首字母:${StrUtil.capitalize(world)};});Button(替换反转).width(100%).onClick((){this.result替换:${StrUtil.replace(abc,a,x)}\n反转:${StrUtil.reverse(hello)};});Text(this.result).fontSize(14).fontColor(#333333)}.padding(16)}}四、进阶用法4.1 用户名格式化import{StrUtil}frompura/harmony-utils;functionformatUsername(name:string):string{lettrimmedname.trim();returnStrUtil.capitalize(StrUtil.toLowerCase(trimmed));}4.2 敏感词替换functionmaskSensitiveWords(text:string,words:string[]):string{letresulttext;words.forEach(word{resultStrUtil.replaceAll(result,word,*.repeat(word.length));});returnresult;}五、注意事项null安全传入null或undefined时方法会安全处理编码问题中文大小写转换可能不符合预期正则替换replaceAll使用正则注意特殊字符转义初始化依赖使用前需确保AppUtil.init()已调用性能考虑大量字符串操作时注意性能影响六、常见问题Q1: capitalize对中文有效吗中文没有大小写概念capitalize对中文无效原样返回。Q2: replace只替换第一个匹配吗是的replace只替换第一个匹配需要替换所有请使用replaceAll。Q3: reverse对emoji有效吗部分emoji由多个Unicode码点组成reverse可能拆散emoji。Q4: toUpperCase对特殊字符有效吗特殊字符如数字、标点不受大小写转换影响原样返回。总结StrUtil的字符串转换和替换方法为文本处理提供了便捷支持。本文详细介绍了核心API、使用步骤、完整示例、进阶用法以及常见问题的解决方案。开发者可以利用这些方法简化大小写转换、文本替换等操作。本文基于pura/harmony-utils工具库更多功能请参考官方文档与后续系列文章。