跳到主要内容

如何从Excel的单元格中提取部分文本字符串?

doc提取子字符串2

本教程显示了从单元格的左,中或右提取子字符串的方法,并说明了如何在特定字符之前或之后提取文本,如下面的屏幕截图所示。


从左,中或右提取子字符串

方法A:使用公式从左侧,中间或右侧提取子字符串

在Excel中,有一些公式可以帮助您快速提取部分文本。

提取前n个字符

假设您要从给定的列表数据中提取前3个字符,请选择一个要放置提取结果的空白单元格,然后使用此公式

=左(B3,3)

B3是要从中提取字符的单元格,3是要提取的字符数。

媒体 输入 获取提取结果的键。 然后将填充手柄拖动到单元格上以应用此公式。
doc提取子字符串3

提取最后n个字符

例如,从字符串列表中提取最后6个字符,请选择要放置提取结果的空白单元格,然后使用以下公式:

=右(B9,6)

B9是要从中提取字符的单元格,6是要提取的字符数。

媒体 输入 获取提取结果的键。 然后将填充手柄拖动到单元格上以应用此公式。
doc提取子字符串4

从中间提取n个字符

如果要从字符串的第3个字符开始提取4个字符,则可以使用以下公式:

= MID(B15,4,3)

B15是从中提取字符的单元格,4表示从第4个字符中提取字符(从左数),3是要提取的字符数。

媒体 输入 获取提取结果的键。 然后将填充手柄拖动到单元格上以应用此公式。
doc提取子字符串5

请注意:

如果要将提取的结果移动到另一个位置,请首先将提取的结果复制并粘贴为值。

方法B:通过Kutools for Excel从左,中或右提取子字符串

如果您不熟悉公式,可以尝试 Kutools for Excel提取文字 该功能易于处理。

在使用提取文本实用程序之前,请花 3 分钟免费安装 Kutools for Excel: 立即免费下载!

1.选择要从中提取子字符串的单元格,单击 库工具 > 文本 > 提取文字.
doc提取子字符串5

2.在弹出 提取文字 对话框,在 按位置提取 标签,前三个选项支持您从左,中或右提取子字符串。
doc提取子字符串5

前N个字符:从左侧提取子字符串。 例如,提取前2个字符,选中此选项,然后在文本框中键入2。
doc提取子字符串5

最后N个字符:从字符串的右边提取子字符串。 例如,提取最后2个字符,选中此选项,然后在文本框中键入2。
doc提取子字符串5

开始到结束字符:从字符串中间提取特定数量的字符。 例如,从第4个字符提取到第9个字符,选中此选项,然后在文本框中分别键入4和9。
doc提取子字符串5

作为公式插入:选中此复选框,结果是可以随原始字符串更改而更改的公式,否则,结果是固定的。

3.根据需要指定位置后,单击 Ok,会弹出一个对话框,以选择一个单元格来放置提取的子字符串。 单击确定。
doc提取子字符串5

现在,子字符串已被提取。
doc提取子字符串5


在指定字符之后或之前提取子字符串

如果要在指定字符之后或之前提取子字符串,则可以应用以下方法之一来处理作业。

方法A:通过使用公式,在定义的字符之后或之前提取子字符串

假设您要提取字符“-”,请使用以下公式:

= RIGHT(B3,LEN(B3)-SEARCH(“-”,B3))

B3是您要从中提取字符的单元格, - 是您要在其后提取字符串的字符。

媒体 输入 获取提取结果的键。 然后将填充手柄拖动到单元格上以应用此公式。
doc提取子字符串7

如果要在定义的字符之前提取子字符串,则可以使用如下公式:

= LEFT(B10,SEARCH(“-”,B10)-1)

结果示例如下所示:
doc提取子字符串9

备注

当您将公式结果复制并粘贴到另一个位置时,数据可能会丢失或更改。 为防止发生此问题,您可以在应用公式后将公式结果复制并粘贴为值。 或者您可以尝试 方法B.
doc提取子字符串10

方法 B: 通过 Kutools for Excel 提取定义字符之后或之前的子字符串

要直接提取指定字符之后或之前的子字符串,可以使用 提取文字 实用程序 Kutools for Excel,它可以帮助您提取字符之后或之前的所有字符,也可以提取字符之前或之后的特定长度的字符。

在使用提取文本实用程序之前,请花 3 分钟免费安装 Kutools for Excel: 立即免费下载!

1.选择要提取字符的单元格,单击 库工具 > 文本 > 提取文字.
doc提取子字符串5

2.在弹出 提取文字 对话框下 按位置提取 标签,请转到文本之前和之后的文本选项以根据需要指定设置。
doc提取子字符串5

文字之前:在输入的字符之前提取子字符串。 例如,将在文本框中键入–之前的所有字符–将被提取。
doc提取子字符串5

文字后:在输入的字符之后提取子字符串。 例如,将在文本框中键入–之后的所有字符都将被提取。
doc提取子字符串5

作为公式插入:选中此复选框,结果是可以随原始字符串更改而更改的公式,否则,结果是固定的。

3。 点击 Ok,会弹出一个对话框,以选择一个单元格来放置提取的子字符串。 请点击 OK.
doc提取子字符串5

现在,已提取某些字符之前或之后的字符串。
doc提取子字符串5


doc文字工具

您必须在Excel中使用的13种文本工具可以使效率提高90%

▲批量编辑单元格中的文本字符串,例如一次将相同的文本添加到单元格中,在任何位置删除字符等等。

▲ 除了图中显示的工具外,Kutools for Excel 中还有 300 个高级工具,可以解决您 82% 的 Excel 难题。

▲在5分钟内成为Excel专家,获得人们的认可和提升。

▲110000多名高效人员成为300多家世界知名企业的选择。

30天免费试用,无需信用卡


提取两个字符之间的子字符串

也许在某些情况下,您需要提取两个字符之间的子字符串,可以选择以下方法之一来处理作业。

方法A:通过公式提取

假设从给定列表中的括号()之间提取字符,则可以使用以下公式:

=MID(LEFT(B3,FIND(")",B3)-1),FIND("(",B3)+1,LEN(B3))

在公式中,B3是您要从中提取字符串的单元格, () 是您要提取其间字符串的两个字符。

媒体 输入 获取提取结果的键。 然后将填充手柄拖动到单元格上以应用此公式。
doc提取子字符串18

备注

如果该公式对您来说有点困难,则可以尝试使用方便的工具快速解决此问题的方法B。

方法B:通过Kutools for Excel提取

In Kutools for Excel有数百个功能,还有一个功能- 提取指定文本之间的字符串 可以快速提取两个字符之间的子字符串。

在使用提取文本实用程序之前,请花 3 分钟免费安装 Kutools for Excel: 立即免费下载!

1.选择一个用于放置提取的子字符串的单元格,单击 库工具 > 公式助手 > 文本 > 提取指定文本之间的字符串.
doc提取子字符串5

2.在 公式助手 对话框,转到 参数输入 部分,然后选择或直接键入单元格引用以及您要在其中提取的两个字符。

默认情况下,当您选择用于提取子字符串的单元格引用时,该单元格引用将是绝对的,无法使用自动填充手柄填充公式,请将其更改为相对。
doc提取子字符串5

3。 点击 Ok,现在已经获得第一个结果,然后将自动填充手柄拖到需要此公式的单元格上。
doc提取子字符串5

提示:

如果要提取两个字符(包括两个字符)之间的字符串,则 提取文字 实用程序 Kutools for Excel 也可以帮您这个忙。

1.选择要在字符之间提取子字符串的单元格,单击 库工具 > 文本 > 提取文字.
doc提取子字符串5

2.在弹出 提取文字 对话框下 依规则提取 标签,转到 文本 部分,键入要在其间提取字符串的字符,并且通配符可以改写该字符串 *。 如果要提取固定长度的字符串,请使用通配符 ? 可以用,一个? 表示一个字符。

然后点击 地址 将规则添加到 规则说明 部分。
doc提取子字符串5

3.Click Ok,会弹出一个对话框,以选择一个单元格来放置提取的子字符串。 请点击 OK.
doc提取子字符串5

现在,已提取两个特定字符之间的字符串。
doc提取子字符串5


从字符串中提取电子邮件地址

如果要从给定的字符串或一定范围的单元格中提取电子邮件地址,则可以使用 提取电子邮件地址 功能一次处理此工作,而不是一个一个地找到它们。

在使用提取电子邮件地址实用程序之前,请花 3 分钟免费安装 Kutools for Excel: 立即免费下载!

1.选择要提取电子邮件地址的单元格,然后单击 库工具 > 文本 > 提取电子邮件地址.
doc提取子字符串22

2.然后会弹出一个对话框,供您选择一个单元格以输出地址电子邮件。
doc提取子字符串23

3。 点击 OK,已提取每个单元格中的电子邮件地址。
doc提取子字符串24


从字符串中提取数字或字母字符

如果有一个混合数字、字母和特殊字符的数据列表,您只想提取数字或字母值,您可以尝试 Kutools for Excel 的 删除字符 实用程序。

1.在使用“删除字符”实用程序之前,需要拥有数据的副本,如下图所示:
doc提取子字符串25

2.然后选择此数据副本,单击 库工具 > 文本 > 删除字符.
doc提取子字符串26

3.在 删除字符 对话框,检查 非数值 选项,点击 Ok.
doc提取子字符串27

现在只剩下数字字符了。
doc提取子字符串28

要仅提取字母值,请检查 非字母 在选项 删除字符 对话。
doc提取子字符串30


下载样本文件

doc样本点击下载此样本文件


与文件转换有关的其他操作(文章)

从日期时间字符串中提取时间
提供技巧,仅从日期时间字符串(mm / dd / yyyy hh:mm:ss)中提取时间(hh:mm:ss)或小时/分钟/秒

提取符合条件的行
在本文中,它可以帮助您快速将满足条件的这些行提取到Excel中的另一个位置,除非一个接一个地查找和复制它们。

从字符串中提取第n个字符
这里将介绍从字符串中提取第n个字符的方法,例如,从字符串a3b1c2中提取第3个字符,结果为b。

提取两个字符之间的子字符串
显示提取两个相同或不同字符之间的子字符串的方法。


  • 超级公式栏 (轻松编辑多行文本和公式); 阅读视图 (轻松读取和编辑大量单元格); 粘贴到过滤范围...
  • 合并单元格/行/列 和保存数据; 拆分单元格内容; 合并重复的行和总和/平均值...防止细胞重复; 比较范围...
  • 选择重复或唯一 行; 选择空白行 (所有单元格都是空的); 超级查找和模糊查找 在许多工作簿中; 随机选择...
  • 确切的副本 多个单元格,无需更改公式参考; 自动创建参考 到多张纸; 插入项目符号,复选框等...
  • 收藏并快速插入公式,范围,图表和图片; 加密单元 带密码 创建邮件列表 并发送电子邮件...
  • 提取文字,添加文本,按位置删除, 删除空间; 创建和打印分页小计; 在单元格内容和注释之间转换...
  • 超级筛选 (将过滤方案保存并应用于其他工作表); 高级排序 按月/周/日,频率及更多; 特殊过滤器 用粗体,斜体...
  • 结合工作簿和工作表; 根据关键列合并表; 将数据分割成多个工作表; 批量转换xls,xlsx和PDF...
  • 数据透视表分组依据 周号,周几等 显示未锁定的单元格 用不同的颜色 突出显示具有公式/名称的单元格...
kte选项卡201905
  • 在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。
  • 在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。
  • 每天将您的工作效率提高50%,并减少数百次鼠标单击!
officetab底部
Comments (36)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Прошу прощения немного изменённый вариант:
"U.S.Р.: 4-0, артикул W9106 - 20 упак. - вес: 2,57 кг" - из этого текста хочу вытащить только 20 упак.
Можете пожалуйста подсказать?
This comment was minimized by the moderator on the site
Добрый день! Я хочу вытащить только "20 упак" из этого текста "U.S.Р.: 4-0, артикул W9106 - 20 упак."
This comment was minimized by the moderator on the site
Is it possible to extract dates such as 7/17/2022 and another might be 5/12/2015? I tried (mm/dd/yyyy) but it didn't work.

Thank you
This comment was minimized by the moderator on the site
Hi, Kimber, I do get your problem? Could you give me more detials?
This comment was minimized by the moderator on the site
Hi, on a sheet I have columns like

Contract Signed 4/9/22
Contact Dated 6/8/19
Contract Expired 12/1/21
Contact Dated 9/25/20

I would be happy to pull only the dates.

What would be every better is if I could all the Contract Signed with the date in one column, Contact Dated with date in another column, Contact expired with date in another column. I have no problem repeating the process to pull each section but that would be the perfect answer.

Thanks
Kim
This comment was minimized by the moderator on the site
Hi, Kimber, if you want to extract date from a text string, please visit this tutorial, How To Extract Date From Text Strings In Excel?, hope it can help you.
This comment was minimized by the moderator on the site
Tak bohužel nic u uvedeného nefunguje. Chtěl jsem jen použít funkci, aby ze jména a příjmení vypsal pouze příjmení, ale hlásí mi to špatnou syntaxi.
This comment was minimized by the moderator on the site
Hi, if you want to extract first name from full name, this tutorial may help you: https://www.extendoffice.com/documents/excel/829-excel-split-first-last-name.html
This comment was minimized by the moderator on the site
I have a word string "Radhey Shyam Teli, Titirkhi 3 kapilvastu"but i just need the bold part from the string to appear in the next column, mind it i have different counts of letter.
This comment was minimized by the moderator on the site
I have 2 worksheets. I'm looking to find the value in the second sheet but copy the text in the cell above it. ( for example if the value found was in cell B6, I need to copy the value in B5)

This comment was minimized by the moderator on the site
Awesome knowledge - thanks so much!
This comment was minimized by the moderator on the site
=RIGHT(B3,LEN(B3)-SEARCH("-", B3))
=LEFT(B10,SEARCH("-", B10)-1)

Can I use both formulas in one cell as I need to extract specific characters from cell ??
Example :
RefBMC 024, INV-006157 - due on 29 Aug 2020
RefHLG14 125, INV-006166 - due on 29 Aug 2020
RefMBR 215, INV-005314 - due on 01 Aug 2020
RefMSC 336, INV-005315 - due on 01 Aug 2020

I need to extract characters after Ref and Before the comma (,) symbol
Can u help me on that ? Thank you,

This comment was minimized by the moderator on the site
Need help with this. The data is below

2500: (252,211,183) #FCD3B7 srgb(252,211,183)

want only #FCD3b7 part in another column cell. the characters are not of the same length in the data set
This comment was minimized by the moderator on the site
Hi, AJ, try formula =MID(A1,SEARCH("#", A1),7)
This comment was minimized by the moderator on the site
Hi, I have a problem to solve and I don't know how to do it.

Here's my data.
10hr 35m
4m 43s

I want to extract it into three columns: hr, m, s
The final result will be like this
hr m s
10 35
4 43

Can I get a formula for the problem?

Thank you
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations