You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Excel中提取指定字符模式后的前六位数字?

在Excel中提取指定字符模式后的前六位数字

针对你需要提取不区分大小写的abc模式后前六位数字的需求,以下是不同Excel版本的解决方案,可覆盖你给出的所有示例场景:

Excel 365/2021及以上版本(推荐)

直接使用正则表达式匹配,精准高效:

=LEFT(REGEX.EXTRACT(A1, "(?i)abc\D*(\d+)", 1), 6)

参数说明:

  • (?i):开启不区分大小写匹配,兼容ABC这类大写形式
  • abc:指定要匹配的字符模式
  • \D*:匹配模式与数字之间的任意非数字字符(包括空格、斜杠、下划线等,也支持无分隔符的情况)
  • (\d+):捕获模式后的连续数字序列
  • LEFT(...,6):从捕获到的数字中提取前六位

如果你的版本暂不支持REGEX.EXTRACT,可以用文本函数组合替代:

=LEFT(TEXTBEFORE(TEXTAFTER(A1, "abc", , , 1, 1), {" ", "/", "_"}, , , 1), 6)
  • TEXTAFTER(..., 1, 1):提取abc(不区分大小写)之后的内容
  • TEXTBEFORE(..., {" ", "/", "_"}, , , 1):提取上述内容中第一个非数字分隔符前的部分(无分隔符则取全部)
  • LEFT(...,6):截取前六位数字

旧版Excel(无REGEX/TEXTAFTER函数)

使用数组公式(输入完成后按Ctrl+Shift+Enter确认,不能直接回车):

=LEFT(MID(A1,MIN(IF(ISNUMBER(--MID(A1,SEARCH("abc",A1,1)+3,ROW($1:$99))),SEARCH("abc",A1,1)+3+ROW($1:$99)-1)),99),6)

逻辑说明:

  1. 先用SEARCH定位abc的结束位置
  2. 从该位置开始逐个检查后续字符是否为数字,找到第一个数字的位置
  3. 从第一个数字位置提取后续内容,再截取前六位数字

验证示例

所有测试输入均返回123456:

  • abc123456
  • abc/123456
  • ABC 123456
  • test_abc12345679
  • abc123456 abc56789(取第一个abc后的数字)
  • 12abc123456

内容的提问来源于stack exchange,提问作者Lee Murray

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 11:26:04