跳至主要内容

从文本字符串中提取第一个和第二个逗号之间的文本

Author: Xiaoyang Last Modified: 2025-05-07

要从文本字符串中提取第一个和第二个逗号之间或第二个和第三个逗号之间的文本,本教程将介绍一些在 Excel 中解决此任务的公式。

doc-extract-text-between-two-commas-1


从文本字符串中提取第一个和第二个逗号或其他分隔符之间的文本

如果要提取第一个和第二个逗号或其他分隔符之间的文本,MID 和 SEARCH 函数可以帮助您完成此任务,通用语法为:

=MID(单元格, SEARCH("字符",单元格) + 1, SEARCH("字符",单元格, SEARCH("字符",单元格)+1) - SEARCH("字符",单元格) - 1)
  • 单元格: 您要从中提取文本的单元格引用或文本字符串。
  • 字符: 您希望基于其提取文本的特定分隔符。

请复制或输入以下公式到一个空白单元格中以获取结果:

=MID(A2, SEARCH(",",A2) + 1, SEARCH(",",A2,SEARCH(",",A2)+1) - SEARCH(",",A2) - 1)

然后,向下拖动填充柄以应用该公式到其他单元格,所有位于第一个和第二个逗号之间的文本都将被提取出来,如下截图所示:

doc-extract-text-between-two-commas-2


公式解释:

1. SEARCH(",",A2) + 1: 此 SEARCH 函数用于查找 A2 单元格中第一个逗号的位置,加 1 表示从下一个字符开始提取。它将得到数字 14。这部分被 MID 函数识别为 start_num 参数。

2. SEARCH(",",A2,SEARCH(",",A2)+1) - SEARCH(",",A2) – 1: 这部分被 MID 函数识别为 num_chars 参数。

  • SEARCH(",",A2,SEARCH(",",A2)+1): 此公式部分用于获取第二个逗号的位置,它将得到数字 21。
  • SEARCH(",", A2): 此 SEARCH 函数将获取 A2 单元格中第一个逗号的位置。它将得到数字 13。
  • SEARCH(",", A2, SEARCH(",", A2)+1) - SEARCH(",", A2)-1=21-13-1: 用第二个逗号的位置减去第一个逗号的位置,再从结果中减去 1 表示排除逗号字符。结果是 7。

3. MID(A2, SEARCH(",",A2) + 1, SEARCH(",",A2,SEARCH(",",A2)+1) - SEARCH(",",A2) - 1)=MID(A2, 14, 7): 最后,MID 函数将从 A2 单元格的第十四字符开始提取 7 个字符。


注意事项:

1. 如果您的文本字符串由其他分隔符分隔,只需根据需要将公式中的逗号替换为其他分隔符即可。

2. 这里还有一个简单的公式也可以帮到您:

=TRIM(MID(SUBSTITUTE(A2,",",REPT(" ",100)),100,100))

doc-extract-text-between-two-commas-3


从文本字符串中提取第二个和第三个逗号或其他分隔符之间的文本

有时,您可能需要提取第二个和第三个逗号之间的文本,在这种情况下,MID、FIND 和 SUBSTITUTE 函数的组合可以帮助您。通用语法为:

=MID(单元格, FIND("#",SUBSTITUTE(单元格,"字符","#",2))+1, FIND("#",SUBSTITUTE(单元格,"字符","#",3)) - FIND("#",SUBSTITUTE(单元格,"字符","#",2))-1)
  • 单元格: 您要从中提取文本的单元格引用或文本字符串。
  • 字符: 您希望基于其提取文本的特定分隔符。

请复制或输入以下公式到一个空白单元格中:

=MID(A2, FIND("#",SUBSTITUTE(A2,",","#",2))+1, FIND("#",SUBSTITUTE(A2,",","#",3)) - FIND("#",SUBSTITUTE(A2,",","#",2))-1)

粘贴公式后,向下拖动填充柄以应用该公式到其他单元格,所有位于第二个和第三个逗号之间的文本都将被提取出来,如下截图所示:

doc-extract-text-between-two-commas-4


公式解释:

1. FIND("#",SUBSTITUTE(A2,",","#",2))+1: 这部分被 MID 函数识别为 start_num 参数。

  • SUBSTITUTE(A2,",","#",2): 此 SUBSTITUTE 函数用于将 A2 单元格中的第二个逗号替换为 # 字符,您将得到如下结果:"Apple-3000KG,Houston#Texas,US"。
  • FIND("#",SUBSTITUTE(A2,",","#",2))+1: 使用 FIND 函数获取由 SUBSTITUE 函数返回的文本字符串中 # 字符的位置。加 1 表示从下一个字符开始提取。这将得到数字 22。

2. FIND("#",SUBSTITUTE(A2,",","#",3)) - FIND("#",SUBSTITUTE(A2,",","#",2))-1: 这部分被 MID 函数识别为 num_chars 参数。

  • FIND("#",SUBSTITUTE(A2,",","#",3)): 此公式将返回第三个逗号的位置,它将得到数字 27。
  • FIND("#",SUBSTITUTE(A2,",","#",3)) - FIND("#",SUBSTITUTE(A2,",","#",2))-1= 27-21-1: 用第三个逗号的位置减去第二个逗号的位置,再从结果中减去 1 表示排除逗号字符。结果是 5。

3. MID(A2, FIND("#",SUBSTITUTE(A2,",","#",2))+1, FIND("#",SUBSTITUTE(A2,",","#",3)) - FIND("#",SUBSTITUTE(A2,",","#",2))-1) = MID(A2, 22, 5): 最后,MID 函数将从 A2 单元格的第二十二字符开始提取 5 个字符。


注意事项:

1. 如果您的文本字符串由其他分隔符分隔,只需根据需要将公式中的逗号替换为其他分隔符即可。

2. 另一个简单的公式也可以帮助您提取第二个和第三个逗号之间的文本:

=TRIM(MID(SUBSTITUTE(A2,",",REPT(" ",100)),200,100))

doc-extract-text-between-two-commas-5


相关函数:

  • MID:
  • MID 函数用于从给定文本字符串的中间查找并返回指定数量的字符。
  • FIND:
  • FIND 函数用于在一个字符串中查找另一个字符串,并返回该字符串在另一个字符串中的起始位置。
  • SEARCH:
  • SEARCH 函数可帮助您从给定文本字符串中查找特定字符或子字符串的位置。
  • SUBSTITUTE:
  • Excel 的 SUBSTITUTE 函数用于替换文本字符串中的文本或字符为其他文本或字符。

更多文章:

  • 从单元格中提取多行文本
  • 如果您有一列包含换行符(通过按 Alt + Enter 键输入文本时产生)分隔的文本字符串,现在您想将这些文本行提取到多个单元格中,如下截图所示。如何使用 Excel 中的公式来解决这个问题?
  • 从文本字符串中提取括号内的文本
  • 如果文本字符串中有一部分文本被括号包围,现在您需要提取括号内的所有文本字符串,如下截图所示。如何在 Excel 中快速轻松地解决这个任务?
  • 提取特定字符最后一次出现后的文本
  • 如果您有一列复杂的文本字符串,其中包含多个分隔符(例如下图所示,包含连字符、逗号、空格等),现在您想找到最后一个连字符出现的位置,并提取其后的子字符串。本文将介绍一些处理此任务的公式。

最佳的办公生产力工具

Kutools for Excel - 助您脱颖而出

🤖 Kutools AI 助手:基于以下功能彻底改变数据分析方式:智能执行   |  生成代码  |  创建自定义公式  |  分析数据并生成图表  |  调用Kutools函数
热门功能查找、高亮或标记重复项  |  删除空行  |  合并列或单元格而不丢失数据  |  四舍五入无需公式 ...
超级VLookup多条件  |  多值  |  跨多个工作表  |  模糊查找...
高级下拉列表简易下拉列表  |  级联下拉列表  |  多选下拉列表...
列管理器添加指定数量的列  |  移动列  |  切换隐藏列的可见状态  比较列以 选择相同和不同的单元格 ...
精选功能网格聚焦  |  设计视图  |  增强编辑栏  |  工作簿与工作表管理器 | 资源库(自动文本)  |  日期提取  |  合并数据  |  加密/解密单元格  |  按列表发送电子邮件  |  超级筛选  |  特殊筛选(筛选粗体/斜体/删除线...) ...
排名前15的工具集12个 文本 工具添加文本删除特定字符 ...)  |  50多种 图表 类型甘特图 ...)  |  40多种实用 公式基于生日计算年龄 ...)  |  19个 插入 工具插入二维码从路径插入图片 ...)  |  12个 转换 工具小写金额转大写汇率转换 ...)  |  7个 合并与拆分 工具高级合并行分割Excel单元格 ...)  |  ... 还有更多

Kutools for Excel拥有超过300种功能,确保您需要的功能只需一键即可实现...


Office Tab - 在Microsoft Office(包括Excel)中启用标签式阅读和编辑

  • 一秒内切换数十个打开的文档!
  • 每天为您减少数百次鼠标点击,告别鼠标手。
  • 在查看和编辑多个文档时,您的工作效率将提高50%。
  • 为Office(包括Excel)带来高效的标签页,就像Chrome、Edge和Firefox一样。