提示:其它语言是由 Google 机器翻译的。 你可以访问 English 版本。
登录
x
or
x
x
马上登记
x

or

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

doc extract substring 1 doc extract substring 2

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


在没有公式的字符之前,之后或之间提取文本字符串

这是一个工具 - 提取文本 in Kutools for Excel 可以帮助您根据需要快速轻松地在字符之前,之后或之间提取字符串。 使用60加载项单击300天免费试用版!
doc提取电子邮件地址

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

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

提取前n个字符

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

= LEFT(B3,3)

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

新闻稿 输入 获取提取结果的关键。 然后在单元格上拖动填充手柄以应用此公式。
doc extract substring 3

提取最后n个字符

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

= RIGHT(B9,6)

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

新闻稿 输入 获取提取结果的关键。 然后在单元格上拖动填充手柄以应用此公式。
doc extract substring 4

从中间提取n个字符

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

= MID(B15,4,3)

B15是从中提取字符的单元格,4表示4th字符的提取字符(从左边开始计数),3是要提取的字符数。

新闻稿 输入 获取提取结果的关键。 然后在单元格上拖动填充手柄以应用此公式。
doc extract substring 5

请注意:

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


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

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

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

假设您要在字符后提取字符“-“从字符串列表中,请使用以下公式:

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

B3是您要从中提取字符的单元格, - 是你想要提取字符串的字符。

新闻稿 输入 获取提取结果的关键。 然后在单元格上拖动填充手柄以应用此公式。
doc extract substring 6 doc extract substring 7

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

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

示例结果如下所示:
doc extract substring 8 doc extract substring 9

注意

将公式结果复制并粘贴到其他位置时,数据可能会丢失或更改。 为防止出现此问题,您可以在应用公式后将公式结果复制并粘贴为值。 或者你可以试试 方法B.
doc extract substring 10

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

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

doc文本工具

您必须拥有的13文本工具将通过90%启动您的效率

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

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

▲成为5分钟的Excel专家,获得人们的认可和推广。

▲110000 +高效人沙300 +世界知名公司的选择。

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

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

1。 选择要提取字符的单元格,单击 Kutools > 文本 > 提取文本.
doc extract substring 11

2。 在弹出 提取文本 对话框中输入 *:文本 文本框,然后单击 添加 添加此标准 提取列表.
doc extract substring 12

通配符 * 表示任意长度的字符串, ? 表明任何人。 在这种情况下, *: 表示提取所有字符(包括冒号) :)来自所选细胞的结肠标记之前。

3。 点击 Ok,弹出一个对话框,选择一个单元格来放置提取的文本。
doc extract substring 13

4。 点击 OK,然后在单元格中提取结肠标记(包括冒号)之前的每个子字符串。
doc extract substring 14

小技巧

  • 如果要提取冒号字符后的所有字符,请键入 :*文本 文本框中 提取文本 对话。
    doc extract substring 15
  • 如果要在冒号之前仅提取两个字符,请键入 ??:文本 文本框中 提取文本 对话。
    doc extract substring 16

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

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

方法A:按公式提取

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

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

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

新闻稿 输入 获取提取结果的关键。 然后在单元格上拖动填充手柄以应用此公式。
doc extract substring 17 doc extract substring 18

注意

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

方法B:由Kutools提取Excel

在此 提取文本 实用程序 Kutools for Excel 也可以帮你做这个操作。

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

1。 选择要在字符之间提取子字符串的单元格,单击 Kutools > 文本 > 提取文本.
doc extract substring 11

2。 在“提取文本”对话框中,在“文本”文本框中输入(*),单击“添加”按钮将此条件添加到“提取”列表中。
doc extract substring 20

星号标记 * 表示任意长度的字符串,如果要提取特定字符长度,可以使用问号 ? 表明任何人物。 这里, (*) 表示提取()之间的所有字符,包括()。

3。 点击 Ok 选择一个单元格以放置提取的结果,然后单击 OK.
doc extract substring 21

现在已经提取了括号之间的子串。
doc extract substring 31


难以置信的! 工具改变了编辑和浏览多个Office文档的方式。

在多个窗口中打开文件

使用Office选项卡在一个选项卡式窗口中打开文件

ot图1 箭头 1

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

如果要从给定字符串或一系列单元格中提取电子邮件地址,可以使用 提取电子邮件地址 函数可以一次处理这个工作,而不是一个一个地找到它们。

在使用Extract Email Address实用程序之前,请花3分钟免费安装Kutools for Excel: 立即免费下载!

1。 选择要提取的电子邮件地址的单元格,然后单击 Kutools > 文本 > 提取电子邮件地址.
doc extract substring 22

2。 然后会弹出一个对话框,您可以选择一个单元格来输出地址电子邮件。
doc extract substring 23

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


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

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

1。 在使用“删除字符”实用程序之前,您需要获得数据的副本,如下面的屏幕截图所示:
doc extract substring 25

2。 然后选择此数据副本,单击 Kutools > 文本 > 删除字符.
doc extract substring 26

3。 在里面 删除字符 对话框,检查 非数字 选项,点击 Ok.
doc extract substring 27

现在只剩下数字字符了。
doc extract substring 28

要仅提取字母值,请检查 非阿尔法 在选项 删除字符 对话。
doc extract substring 29 doc extract substring 30


下载示例文件

doc示例单击下载此示例文件


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

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

提取符合条件的行
在本文中,它可以帮助您快速将符合条件的行提取到Excel中的其他位置,除了逐个查找和复制它们。

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

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



  • 超级方程式酒吧 (轻松编辑多行文字和公式); 阅读布局 (轻松读取和编辑大量单元格); 粘贴到过滤范围...
  • 合并单元格/行/列 和保持数据; 分裂细胞含量; 结合重复行和总和/平均值...防止重复的细胞; 比较范围...
  • 选择复制或唯一 行; 选择空行 (所有细胞都是空的); 超级查找和模糊查找 在许多工作簿中; 随机选择......
  • 精确复制 多个单元格而不更改公式参考; 自动创建参考 多张表; 插入项目符号,复选框等等......
  • 喜欢并快速插入公式,范围,图表和图片; 加密单元格 密码; 创建邮件列表 并发送电子邮件...
  • 提取文本,添加文本,按位置删除, 删除空间; 创建和打印分页小计; 在单元格内容和注释之间转换...
  • 超级过滤器 (将过滤方案保存并应用到其他工作表); 高级排序 按月/周/日,频率等; 特殊过滤器 用粗体,斜体......
  • 结合工作簿和工作表; 根据键列合并表; 将数据拆分为多个表格; 批量转换xls,xlsx和PDF...
  • 数据透视表分组 周数,星期几等...... 显示未锁定,锁定的单元格 用不同的颜色; 突出显示具有公式/名称的单元格...
kte tab 201905
  • 在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,Publisher,Access,Visio和Project。
  • 在同一窗口的新选项卡中打开并创建多个文档,而不是在新窗口中。
  • 通过50%提高您的工作效率,每天为您减少数百次鼠标点击!
官方底部
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Jesse · 27 days ago
    I need to separate the city from a cell. Example 15933 Rockingham StFrisco I have a file with several hundred fields with different cities with different character counts. Is there a way to find and separate the city based on it being the all the characters from the right that begins with an uppercase letter? Or any other solution? Thank you
  • To post as a guest, your comment is unpublished.
    Salman · 29 days ago
    One T-shirt title Name (NIke) have differents Sizes Like: (XS-2XL) mean XS,S,M,L,XL & 2XL how to Make divide in different rows with mentioned sizes can you help me please
  • To post as a guest, your comment is unpublished.
    Ashfaq · 3 months ago
    There are multiple such entries so want to apply the formula to that
  • To post as a guest, your comment is unpublished.
    Ashfaq · 3 months ago
    I want to calculate the time difference between two times, please Help below is the time format



    "Apr, 30 2019 12:44 PM PT" "Apr, 30 2019 12:52 PM PT"
  • To post as a guest, your comment is unpublished.
    Jessica Swaffar · 3 months ago
    I need help to separate the address, then city, then state, then zip. See example:


    13160 E. 68th st. Broken Arrow, OK 74012
  • To post as a guest, your comment is unpublished.
    Berdine · 3 months ago
    Good day can you please help me to add text together into one cell?
  • To post as a guest, your comment is unpublished.
    Isgaak · 4 months ago
    How do extract data out of a string but i only want 2 sets of data in the string?
    • To post as a guest, your comment is unpublished.
      Sunny · 3 months ago
      Hi, Isgaak, please upload your examples for better understanding.
  • To post as a guest, your comment is unpublished.
    nathan · 6 months ago
    Thank you for this article! the =RIGHT(A2,3) function was exactly what i needed to extract the right 3 numbers into a separate column
  • To post as a guest, your comment is unpublished.
    saud · 6 months ago
    thanks a lot. saved me a lot of time. love you.
  • To post as a guest, your comment is unpublished.
    Seth · 1 years ago
    If you need to grab "everything but" data in another cell. You can use the below formula:


    In Excel form:
    =Left(A1,FIND("x",A1)-1)

    In layman talking it out form:
    = everything LEFT of cell data in parentheses (Cell,FIND everything in parentheses ("common unwanted data that must be in quotes", Cell) minus "-1" the number of characters you need removed to the left of the "common unwanted data")



    Which would look like this:
    USA1234xp25 | USA1234
    USA123xp30 | USA123
    USA12345xj10 | USA12345

    Very Useful when pulling data within a layered naming convention.
  • To post as a guest, your comment is unpublished.
    Sanjeeb · 2 years ago
    For an example in a cell (G2) > ABC1234568..... > is there.
    You just want to have whatever to the right after leaving the left ABC (Fixed). Then Use the formula as =MID(G2,3,200)
    Here 3 stands for after 3 character from the left and 200 is an approximate (maximum text number) number that mightbe in the right side . So your job is simple. Thank you