Excel字符串处理实战:用LEFT和MID移除中间数字

Excel字符串处理实战:用LEFT和MID移除中间数字

问题场景

在日常工作中,我们常会遇到类似 Opportunity_Fast_Field_Update_Flow.1.Opportunity_can_t_be_editable.CustomError 的字符串。这种字符串通常由 前缀 + 中间数字 + 后缀 组成,例如日志路径、嵌套字段名等。

需求 :如何快速移除中间的数字部分(如 .1..2.),保留前后内容?

解决方案

使用 Excel 公式结合 LEFTMID 函数,动态提取前后两部分并拼接。

公式

less 复制代码
=LEFT(A1, FIND(".", A1) - 1) & "." & MID(A1, FIND(".", A1, FIND(".", A1) + 1) + 1, LEN(A1))

公式详解

1. 提取前缀部分

less 复制代码
LEFT(A1, FIND(".", A1) - 1)
  • 功能 :提取第一个点号(.)前的部分。
  • 示例
    原始字符串:Opportunity_Fast_Field_Update_Flow.1.Opportunity_can_t_be_editable.CustomError
    FIND(".", A1) 返回第一个点号的位置(假设为 52),LEFT(A1, 52 - 1) 提取前 51 个字符:
    Opportunity_Fast_Field_Update_Flow

2. 提取后缀部分

less 复制代码
MID(A1, FIND(".", A1, FIND(".", A1) + 1) + 1, LEN(A1))
  • 功能:从第二个点号后开始提取剩余内容。

  • 步骤解析

    1. FIND(".", A1) 找到第一个点号位置(如 52)。
    2. FIND(".", A1, 52 + 1) 从第一个点号后继续查找,找到第二个点号位置(如 54)。
    3. MID(A1, 54 + 1, ...) 从第二个点号后一位(即 55)开始提取剩余内容:
      Opportunity_can_t_be_editable.CustomError

3. 拼接结果

将前缀和后缀用 . 连接,形成最终结果:
Opportunity_Fast_Field_Update_Flow.Opportunity_can_t_be_editable.CustomError


完整示例

输入字符串(A1) 公式输出
Opportunity_Fast_Field_Update_Flow.1.Opportunity_can_t_be_editable.CustomError Opportunity_Fast_Field_Update_Flow.Opportunity_can_t_be_editable.CustomError
Task_Record_Triggered_And_Scheduled.2.Custom_error.CustomError Task_Record_Triggered_And_Scheduled.Custom_error.CustomError
MyString.3.Suffix MyString.Suffix

注意事项

1. 错误处理

如果字符串中没有两个点号(如 .1. 结构缺失),公式会报错(#VALUE!)。
解决方法 :添加 IFERROR 容错逻辑:

less 复制代码
=IFERROR(
    LEFT(A1, FIND(".", A1) - 1) & "." & MID(A1, FIND(".", A1, FIND(".", A1) + 1) + 1, LEN(A1)),
    A1
)
  • 作用:当公式报错时,直接返回原始字符串(避免显示错误值)。

适用场景

  • 输入格式 :字符串中包含类似 .[数字]. 的结构(例如 .2..3..123.)。

  • 输出目标:移除中间的数字部分,保留前后内容。

  • 典型用途

    • 清洗日志路径(如 Log.123.ErrorLog.Error)。
    • 处理嵌套字段名(如 User.42.AddressUser.Address)。

总结

本文通过 LEFTMID 函数的组合,展示了如何高效移除字符串中的中间数字部分。该方法简单直观,适用于固定格式的字符串处理。

相关推荐
CHEN5_021 天前
【CouponHub项目开发】EasyExcel解析Excel并使用线程池异步执行和延时队列兜底
java·数据库·excel
我想起个名字1 天前
sqlserver2008导入excel表数据遇到的问题
sqlserver·excel
Metaphor6921 天前
Java 如何在 Excel 中添加超链接?使用 Spire.XLS for Java 轻松实现
java·经验分享·excel
JAVA不会写1 天前
EasyExcel:阿里开源的高效 Excel 处理工具,轻松解决 POI 内存溢出问题
excel
小雪人8281 天前
wps的excel如何转为谷歌在线表格
excel·wps
Brown.alexis1 天前
处理省市区excel数据加工成SQL
python·sql·excel
瓶子xf2 天前
第三家公司虽然用了powerbi,但更适合用excel
excel·powerbi
揭老师高效办公2 天前
打开多个Excel文件后快速关闭所有的文档,并且退出Excel应用
word·powerpoint·excel
l1t2 天前
美团龙猫(longcat.AI)编写的利用二分查找优化Excel的sheet.xml指定范围输出C程序
xml·c语言·excel·解析器
小羔羊的官方学习账号2 天前
整理期初数据用到的EXCEL里面的函数操作
excel·sap·期初数据整理