跳至主要内容

从文本字符串中删除第一个或最后一个特定字符之前或之后的文本

Author: Xiaoyang Last Modified: 2025-07-31

本教程将讨论如何删除第一个或最后一个特定字符(例如空格、逗号)之前或之后的文本,这些文本来自Excel中的文本字符串列表。

doc-remove-after-first-space-01


从文本字符串中删除第一个特定字符之前或之后的文本

删除第一个特定字符(如空格、逗号)之前的文本

要从文本字符串中删除第一个特定字符之前的文本,RIGHT、LEN 和 FIND 函数可以帮助您,通用语法为:

=RIGHT(单元格, LEN(单元格)-FIND("字符", 单元格))
  • 单元格: 您希望从中删除文本的单元格引用或文本字符串。
  • 字符: 您希望基于其删除文本的特定分隔符。

请在空白单元格中输入或复制以下公式以输出结果:

=RIGHT(A2,LEN(A2)-FIND(" ",A2))

然后,向下拖动填充柄到您想应用此公式的单元格,文本字符串中第一个空格之前的所有文本都将被删除,请参见截图:

doc-remove-after-first-space-02

公式解释:

1.LEN(A2)-FIND(" ",A2): 公式的这一部分被识别为RIGHT函数中的num_chars参数。

  • FIND(" ",A2): FIND函数用于获取第一个空格的位置,返回数字11。
  • LEN(A2): 此LEN函数将返回单元格A2中字符的总数,得到数字27。
  • LEN(A2)-FIND(" ",A2)=27-11: 从单元格A2的总长度中减去第一个空格的位置,将得到第一个空格之后的字符数。

2. RIGHT(A2,LEN(A2)-FIND(" ",A2))=RIGHT(A2, 16): 最后,此RIGHT函数将从单元格A2中文本字符串的右侧提取16个字符。


删除第一个特定字符(如空格、逗号)之后的文本

在Excel中,通过LEFT和FIND函数的组合,您可以快速删除第一个特定字符之后的文本。通用语法为:

=LEFT(单元格,FIND("字符",单元格)-1)
  • 单元格: 您希望从中删除文本的单元格引用或文本字符串。
  • 字符: 您希望基于其删除文本的特定分隔符。

请在空白单元格中应用以下公式:

=LEFT(A2,FIND(" ",A2)-1)

然后,向下拖动填充柄到需要应用此公式的单元格,所有第一个空格之后的文本都会立即被删除,请参见截图:

doc-remove-after-first-space-03

公式解释:

1.FIND(" ",A2)-1: 此FIND函数将获取单元格A2中第一个空格的位置,减去1表示排除空格字符,结果为10。它被识别为LEFT函数中的num_chars参数。

2. LEFT(A2,FIND(" ",A2)-1)=LEFT(A2, 10): 此LEFT函数将从单元格A2中文本字符串的左侧提取10个字符。


从文本字符串中删除最后一个特定字符之前或之后的文本

删除最后一个特定字符(如空格、逗号)之前的文本

如果需要删除最后一个特定字符之前的所有文本,并仅保留最后一个特定字符之后的子字符串,RIGHT、LEN、SEARCH和SUBSTITUTE函数可能会有所帮助。通用语法为:

=RIGHT(单元格,LEN(单元格)-SEARCH("#",SUBSTITUTE(单元格,"字符","#",LEN(单元格)-LEN(SUBSTITUTE(单元格,"字符","")))))
  • 单元格: 您希望从中删除文本的单元格引用或文本字符串。
  • 字符: 您希望基于其删除文本的特定分隔符。

为了解决此任务,请将以下公式复制或输入到空白单元格中:

=RIGHT(A2,LEN(A2)-SEARCH("#",SUBSTITUTE(A2," ","#",LEN(A2)-LEN(SUBSTITUTE(A2," ","")))))

然后,向下拖动填充柄以将此公式填充到其他需要的单元格,现在,最后一个空格之前的所有文本都已被删除,仅保留了最后一个空格之后的文本,请参见截图:

doc-remove-after-first-space-04

公式解释:

1. LEN(A2)-SEARCH("#",SUBSTITUTE(A2," ","#",LEN(A2)-LEN(SUBSTITUTE(A2," ","")))):

  • SUBSTITUTE(A2," ",""): 此SUBSTITUTE函数用于将单元格A2中的所有空格字符替换为无内容,结果为:“Tom-Grade1HoustonTexasUS”。
  • LEN(SUBSTITUTE(A2," ",""): 此LEN函数返回由SUBSTITUTE函数返回的不带空格的文本字符串的字符数,结果为24。
  • LEN(A2)-LEN(SUBSTITUTE(A2," ","")=27-24: 从单元格A2的总长度中减去没有空格的字符数,将得到文本字符串之间的空格数,结果为3。
  • SUBSTITUTE(A2," ","#",LEN(A2)-LEN(SUBSTITUTE(A2," ",""))= SUBSTITUTE(A2," ","#", 3): 此SUBSTITUTE函数用于将最后一个空格字符替换为特定的#字符,结果为:“Tom-Grade1 Houston Texas#US”。
  • SEARCH("#",SUBSTITUTE(A2," ","#",LEN(A2)-LEN(SUBSTITUTE(A2," ",""))))= SEARCH("#", "Tom-Grade1 Houston Texas#US") : 此SEARCH函数将在由SUBSTITUTE函数返回的文本字符串中查找特定#字符的位置,结果为25。
  • LEN(A2)-SEARCH("#",SUBSTITUTE(A2," ","#",LEN(A2)-LEN(SUBSTITUTE(A2," ",""))))=27-25: 单元格A2中文本的总长度减去最后一个空格的位置,将得到最后一个空格之后的字符数,结果为2。

2. RIGHT(A2,LEN(A2)-SEARCH("#",SUBSTITUTE(A2," ","#",LEN(A2)-LEN(SUBSTITUTE(A2," ","")))))=RIGHT(A2, 2): 最后,此RIGHT函数将从单元格A2中文本字符串的右侧提取2个字符。


删除最后一个特定字符(如空格、逗号)之后的文本

要删除最后一个特定字符之后的文本,LEFT、FIND、SUBSTITUTE和LEN函数可以帮助您,通用语法为:

=LEFT(单元格,FIND("#",SUBSTITUTE(单元格,"字符","#",LEN(单元格)-LEN(SUBSTITUTE(单元格,"字符",""))))-1)
  • 单元格: 您希望从中删除文本的单元格引用或文本字符串。
  • 字符: 您希望基于其删除文本的特定分隔符。

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

=LEFT(A2,FIND("#",SUBSTITUTE(A2," ","#",LEN(A2)-LEN(SUBSTITUTE(A2," ",""))))-1)

然后,向下拖动填充柄到需要应用此公式的单元格,您将得到如下截图所示的结果:

doc-remove-after-first-space-05

公式解释:

1. FIND("#",SUBSTITUTE(A2," ","#",LEN(A2)-LEN(SUBSTITUTE(A2," ",""))))-1:

  • SUBSTITUTE(A2," ",""): 此SUBSTITUTE函数用于将单元格A2中的所有空格字符替换为无内容,结果为:“Tom-Grade1HoustonTexasUS”。
  • LEN(SUBSTITUTE(A2," ",""): 此LEN函数返回由SUBSTITUTE函数返回的不带空格的文本字符串的字符数,结果为24。
  • LEN(A2)-LEN(SUBSTITUTE(A2," ",""))=27-24: 从单元格A2的总长度中减去没有空格的字符数,将得到文本字符串之间的空格数,结果为3。
  • SUBSTITUTE(A2," ","#",LEN(A2)-LEN(SUBSTITUTE(A2," ","")))= SUBSTITUTE(A2," ","#", 3): 此SUBSTITUTE函数用于将最后一个空格字符替换为特定的#字符,结果为:“Tom-Grade1 Houston Texas#US”。
  • FIND("#",SUBSTITUTE(A2," ","#",LEN(A2)-LEN(SUBSTITUTE(A2," ",""))))-1=FIND("#", "Tom-Grade1 Houston Texas#US ")-1=25-1: 此FIND函数将返回由SUBSTITUTE函数返回的文本字符串中特定#字符的位置,减去1表示排除空格字符,结果为24。

2. LEFT(A2,FIND("#",SUBSTITUTE(A2," ","#",LEN(A2)-LEN(SUBSTITUTE(A2," ",""))))-1)=LEFT(A2, 24): 最后,此LEFT函数用于从单元格A2中文本字符串的左侧提取24个字符。


相关使用的函数:

  • LEFT:
  • LEFT函数从提供的字符串的左侧提取给定数量的字符。
  • RIGHT:
  • RIGHT函数用于从文本字符串的右侧提取特定数量的字符。
  • FIND:
  • FIND函数用于在一个字符串中查找另一个字符串,并返回该字符串在另一个字符串中的起始位置。
  • SEARCH:
  • SEARCH函数可以帮助您从给定的文本字符串中查找特定字符或子字符串的位置。
  • SUBSTITUTE:
  • Excel中的SUBSTITUTE函数用另一个文本或字符替换文本字符串中的文本或字符。
  • LEN:
  • LEN函数返回文本字符串中的字符数。

更多文章:


最佳的办公生产力工具

Kutools for Excel - 助您脱颖而出

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

Kutools for Excel 拥有超过 300 项功能,确保您所需的一切都仅需一键之遥...


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

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