✅ 函数:REPLACE
📘 功能:
在一段文本的指定位置开始,删除指定个数的原有字符,然后插入(替换)上新的文本。🎯 本质:不是“查找后替换”,而是“按位置和长度强行替换”。
🧮 语法:
=REPLACE(原文本, 开始位置, 替换的字符个数, 新文本)
| |
|---|
| 需要进行替换操作的原始字符串,可以是: • 直接输入的文本,如 "ABC123" • 单元格引用,如 A1(推荐) |
| 指定从原文本的 第几个字符开始替换(从 1 开始计数,不是 0) |
| 指定要 删除/替换掉多少个字符(可以是 1 个或多个,也可以为 0,表示不删除只插入) |
| 你想要 插入(或替换上去)的新内容,可以是文本、数字(会自动转文本)、单元格引用等 |
✅ 示例:基础用法
📌 示例 1:替换字符串中的某几个字符
假设 A1 = "ABC123456",你想把其中的 "123"(从第4位开始的3个字符)替换为 "XYZ":=REPLACE(A1, 4, 3, "XYZ")
- 位置:第 4 个字符是
"1",连续 3 个字符是 "123" - 从第 4 位开始,删除 3 个字符(即
"123"),然后插入 "XYZ",最终变成:ABCXYZ456
📌 示例 2:替换手机号中间 4 位为 ****(隐私处理)
假设 A1 = "13812345678",你想把第 4~7 位(即手机号中间 4 位)替换为"**"`:=REPLACE(A1, 4, 4, "****")
🔐 这是隐私保护的经典用法,比如显示:1385678
📌 示例 3:在文本的某个位置插入新内容(不删除原有字符)
如果你 只想插入新文本,而不删除任何旧字符,只需将 “替换的字符个数”设为 0 即可。A1 = "2024-",你想在后面第 5 个位置插入 "报表"(即在末尾插入):- 从第 5 个字符位置开始(原文本只有 4 个字符:"2024-",第5位是空)
📌 示例 4:替换编号中的部分内容
假设 A1 = "ORD-2023-001",你想把年份 "2023"(第 5~8 位,共 4 个字符)替换为 "2024":=REPLACE(A1, 5, 4, "2024")
✅ REPLACE 函数的常见用途
✅ 注意事项
| |
|---|
| 第一个字符的位置是 1,不是 0(与许多编程语言不同) |
| |
| 但如果要保证结果是文本,建议新内容为文本格式,或单元格为文本格式 |
| 如 =REPLACE("ABC123", 2, 1, "X")→ "AXC123" |
| 即使你替换的是数字,最终返回的也是 文本字符串,不能直接用于计算 |
✅ REPLACE 与 SUBSTITUTE 函数的区别(常混淆)
| | | |
|---|
=REPLACE(原文本, 开始位置, 个数, 新文本) | | | |
=SUBSTITUTE(原文本, 旧文本, 新文本, [第几次出现]) | | | 比如把所有的 "A"换成 "B",或只替换第 2 次出现的某个词 |
- 你想替换 第 4~6 位字符 → 用
REPLACE - 你想替换 所有“ABC”为“XYZ” → 用
SUBSTITUTE
✅ 总结
| |
|---|
| =REPLACE(原文本, 开始位置, 替换的字符个数, 新文本) |
| 在原文本的指定位置开始,删除指定个数的字符,然后插入新的文本(实现精准替换或插入) |
| |
| |
| |
| |
| ✅ 是的,只要将 替换个数设为 0,就可以实现插入效果 |
| 隐私保护(如手机号脱敏)、编号修改、文本精准替换、插入内容、格式调整等 |
| |
✅ 一句话总结:
=REPLACE(原文本, 开始位置, 替换个数, 新文本)是 Excel / WPS 中用来精准替换文本中某个位置和长度的字符的函数,可以用来修改、屏蔽、插入内容,非常适合处理编号、隐私信息、格式化文本等场景。