SUBSTITUTE 函数¶
1. 函数概述¶
SUBSTITUTE 用于在文本字符串中,把指定的旧文本替换为新的文本。它的核心优势是:
- 只替换你指定的那一段内容(按文本匹配)
- 支持选择性替换:可以只替换第 1 次、第 2 次……或替换全部出现次数
- 适用于清洗数据、统一格式、批量修正文案等场景
补充理解:
SUBSTITUTE是“按内容替换”,不是“按位置替换”。它会在原文本中查找与old_text完全匹配的片段并替换。
2. 基础语法¶
3. 参数说明¶
3.1 text¶
- 含义:要处理的原始文本(可以是单元格引用,也可以是直接写入的字符串)
- 类型:文本/单元格引用
- 示例:
A2、"北京-朝阳区-望京"
3.2 old_text¶
- 含义:你想被替换掉的旧文本片段(必须精确匹配)
- 类型:文本
- 示例:
"-"、"有限公司"、" "(空格)
3.3 new_text¶
- 含义:用于替换
old_text的新文本 - 类型:文本(也可以是空字符串)
- 示例:
"/"、""(表示删除)
3.4 [instance_num](可选)¶
- 含义:指定替换第几次出现的
old_text -
规则:
- 省略:替换所有匹配到的
old_text - 填数字
1:只替换第 1 次出现 - 填数字
2:只替换第 2 次出现,以此类推
- 省略:替换所有匹配到的
-
类型:数字(正整数)
4. 基础用法示范¶
4.1 替换所有出现次数(最常用)¶
需求:把手机号中的 - 统一去掉
- 原文本:
138-0013-8000(在 A2)
结果:13800138000
4.2 只替换指定第 N 次出现¶
需求:把字符串中的第 2 个短横线 - 替换为 /
- 原文本:
2026-01-14(在 A2)
结果:2026-01/14
4.3 替换空格:清理多余间隔¶
需求:把文本中的空格替换为空(删除空格)
- 原文本:
A B C(在 A2)
结果:ABC
4.4 替换特定词:统一名称或口径¶
需求:把“有限公司”替换为“公司”
- 原文本:
企业空间有限公司(在 A2)
结果:企业空间公司
4.5 组合替换:多步清洗(嵌套使用)¶
需求:把文本中的 - 换成空,并把 (、) 去掉
- 原文本:
产品-名称(新版)(在 A2)
结果:产品名称新版
思路:从内到外逐步替换,每一层替换一种目标字符。
4.6 结合单元格参数:让替换规则可配置¶
需求:在表格中可配置替换规则
- A2:原文本
- B2:旧文本
- C2:新文本
结果:当你修改 B2/C2 时,替换结果自动更新,适合批量清洗模板化处理。
5. 总结¶
SUBSTITUTE的定位是:按文本内容匹配并替换,适合做规范化、清洗、口径统一。- 不传
[instance_num]时会替换全部匹配项;传入数字后可以精确控制只替换第 N 次出现。 -
常见高频场景:
- 删除特定字符(用
""替换) - 统一分隔符(如
-改为/) - 替换词汇以统一命名
- 多步清洗(嵌套多个
SUBSTITUTE)
- 删除特定字符(用
-
实操建议:当清洗规则多且稳定时,用嵌套
SUBSTITUTE;当规则需要经常变动时,把old_text/new_text放到单元格里做可配置方案。