文本首字母大写
函数名:wb_首字母大写 / str_Capitalize
功能描述
将文本中每个单词的首字母转换为大写,其余字母转换为小写。使用不变文化(InvariantCulture)确保在不同系统区域设置下结果一致。
会员等级:🟢 免费版(Free)
语法
excel
=str_Capitalize(文本)参数
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| 文本 | String | 是 | 无 | 原始文本,支持文本常量或单元格引用 |
返回值
String - 每个单词首字母大写、其余字母小写后的文本。
使用示例
英文标题格式化
公式:
excel
=str_Capitalize("hello world")结果:
Hello World含连字符的文本
公式:
excel
=str_Capitalize("jack-chen")结果(手动回退模式下):
Jack-Chen技术说明
- 主实现:先将文本整体转为小写(
ToLower),再使用TextInfo.ToTitleCase(基于CultureInfo.InvariantCulture)将每个单词首字母大写 - 备选回退:当主实现抛出异常时,自动调用
ManualTitleCase手动实现——逐字符遍历,遇到字母且处于新单词起始位置时转大写,其余转小写;空格和连字符-视为新单词的起始边界 - 使用不变文化避免因线程区域设置不同导致意外结果
错误处理
| 错误场景 | 返回值 |
|---|---|
| 输入为 null 或空字符串 | 原样返回(null 或空字符串) |
| ToTitleCase 抛出异常且手动回退成功 | 手动处理后的结果 |
| ToTitleCase 与手动回退均失败 | "错误: {异常信息}" |