跳至主要内容

查找单元格中字符的第n次出现位置

Author: Xiaoyang Last Modified: 2025-05-07

如果需要从文本字符串中查找并获取特定字符第n次出现的位置,如下图所示,在Excel中没有直接的函数可以解决此任务。本文将介绍一个结合FIND和SUBSTITUTE函数的公式来处理这个问题。

doc-find-nth-occurrence-1


查找单元格中特定字符第n次出现的位置

例如,我在A列中有一系列文本字符串,现在我想获取B列中特定字符第n次出现的位置,该如何解决呢?

doc-find-nth-occurrence-2

在Excel中,您可以结合FIND和SUBSTITUTE函数来解决此问题,通用语法为:

=FIND(CHAR(160),SUBSTITUTE(text,char,CHAR(160),N))
  • text: 您要使用的文本字符串或单元格值。
  • N: 您要获取位置的字符第n次出现。

1. 请在您希望放置结果的空白单元格中输入或复制以下公式:

=FIND(CHAR(160),SUBSTITUTE(A2,B2,CHAR(160),C2))

注意:在上述公式中,A2是包含您要使用的文本字符串的单元格,B2是您要查找的特定字符,C2是您要基于其获取特定字符位置的第n个数。

2. 然后,向下拖动填充柄以应用该公式到其他单元格,并且您将获得所需的结果:

doc-find-nth-occurrence-3


公式解释:

SUBSTITUTE(A2,B2,CHAR(160),C2): SUBSTITUTE函数将替换字符“o”的第3次出现为char(160)字符。它返回如下截图所示的文本字符串:

doc-find-nth-occurrence-4

FIND(CHAR(160),SUBSTITUTE(A2,B2,CHAR(160),C2)): 此FIND函数用于查找由SUBSTITUTE函数返回的新文本字符串中char(160)字符的位置。


相关函数:

  • FIND:
  • FIND函数用于在一个字符串内查找另一个字符串,并返回字符串在另一个字符串内的起始位置。
  • SUBSTITUTE:
  • SUBSTITUTE函数用另一个文本或字符替换文本字符串中的文本或字符。

更多文章:

  • 从多行单元格中提取最后一行文本
  • 要从由换行符分隔的文本字符串中提取最后一行文本,通常情况下,没有直接的方法可以解决这个问题。本文将介绍一个在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一样。