• 我的订阅
  • 科技

excel中如何提取字符的前中后位置

类别:科技 发布时间:2023-02-23 11:44:00 来源:卓越科技

当excel数据列中,部分的单元格文本中包含了不止一个的相同特定符号,该如何提取这个符号之前,及这两个符号之间,或符号之后的字符串内容。

如下图所示,在A列源数据中,是工程项目使用的一些材料的尺寸面积,在一些单元格中,包含了不止一个材料的信息,而使用了符号”+“来分隔不同材料的尺寸信息。

但稍微简单一点的是,这列数据最多只包含了两个“+”号,也就是3组材料的尺寸信息。

现在我们需要将这列数据进行分隔,以符号“+”为分隔符,分别提取到3列中。

如单元格文本中只有一个材料的尺寸信息,则提取到第1列;包含两个材料的信息,则分别提取到第1列和第2列;而单元格中出现了两个“+”号,即3种材料信息,那么按照符号“+”前、中、后的顺序分别提取到第1列到第3列。

excel中如何提取字符的前中后位置

这个场景,其实使用分列是最快捷的,因为它是按照相同的指定分隔符号来分列,基本上只需要通过一次分列操作就能将数据按照符号分成需要的列。

但有时我们的需求就是要通过公式来提取字符,那么今天,作者还是介绍以下几个公式,分别来提取文本中字符的前中后位置的内容。

首先是在第1列提取第一个材料的信息。

由于第1个材料的信息拥有固定的位置,即位于符号“+”之前,或者单元格文本没有符号,则返回原文本。

因此我们可以输入一个公式:=IFERROR(LEFT(A2,FIND("+",A2)-1),A2)

excel中如何提取字符的前中后位置

这是一个关于文本字符提取函数left的公式,它嵌套了find函数。

我们可以记住一点,在绝大多数的字符提取场景中,find函数是必用的一个文本函数,因为它的作用就是返回指定字符在文本中的位置。只有得到该字符的位置,才可以继续嵌套其他函数来提取需要的字符。

同时,在这个函数公式中,也使用了iferror函数来进行容错,即当left表达式的结果为错误时,会返回一个指定值,这里设置的是A2,照应之前的一句话,

“单元格文本没有符号,则返回原文本。”

excel中如何提取字符的前中后位置

这个函数公式比较简单,我们就不细讲,关于left、find函数的基础语法和用法,可以参见作者专栏《excel100个常见函数快速入门》。

接下来提取第3列,即当单元格文本出现两个“+”号,要提取最后一个“+”号后的内容。

这一步我们可以借鉴第1列的提取,left函数是提取字符串左侧数据,那么我们使用right函数,就可以提取字符串的右侧数据。

但提取的关键点在于,文本中包含了两个符号“+”,如果使用常规的find函数表达式,只会返回第1个“+”所在的位置。因此我们需要创建一个嵌套公式。

如下完整公式:

=IFERROR(RIGHT(A2,LEN(A2)-FIND("+",A2,FIND("+",A2,1)+1)),"")

excel中如何提取字符的前中后位置

iferror函数我们先不管,那right函数是提取右侧数据,有两个参数,第1参数是文本,第2参数是提取的字符数量。

在第2参数我们的表达式为:LEN(A2)-FIND("+",A2,FIND("+",A2,1)+1)

用文字来表达,就是A2的字符长度减去符号“+”在文本中的位置,而重点来了。

FIND("+",A2,1)的含义是从第1个字符开始查找“+”号在文本中的位置,这里结果是7,加上1就等于8;接着我们将这个表达式嵌套入另一个find函数中,就如同上面的“FIND("+",A2,FIND("+",A2,1)+1)”,那么它就等于FIND("+",A2,8),即表示从第8个字符开始查找符号“+”在文本中的位置。

既然是从第8个字符开始,而第1个符号“+”在文本中的位置是7,那么显然是跳过了第1个“+“号,那么继续查找的符号”+“的位置,即是第2个”+“在文本中的位置。

最后用整个文本的字符长度减去第2个”+“号的位置,再使用right函数来提取字符,便得到我们需要的结果。

这个公式的学习点就在于find函数的嵌套,我们也可以思考一下,当文本中出现三次”+“号,要提取第3个符号后的文本,是不是可以嵌套3次find函数呢!?

接下来我们再看看第2列的提取,这也是这个场景中,相较要复杂一点的内容。

从下面图中公式就可见一斑了。

先上完整公式:=IFERROR(IF((LEN(A2)-LEN(SUBSTITUTE(A2,"+","")))=2,MID(A2,FIND("+",A2)+1,FIND("+",A2,FIND("+",A2)+1)-FIND("+",A2)-1),RIGHT(A2,LEN(A2)-FIND("+",A2))),"")

excel中如何提取字符的前中后位置

在公式中,作者“贴切”地使用不同颜色来标注不同函数或参数的表达。

也确实,公式分为了几个部分,使用了if函数来判断一个条件,即当单元格文本中出现了两次“+”号,那么就提取两个符号之间地字符内容,否则就提取第1个符号后内容;

而提取两个符号间的内容,则使用了mid和find的嵌套函数,整个表达式看起来复杂,其实都是在基础语法上的应用,一层一层剥开来看,还是好理解的。

这里作者只介绍以下if函数条件的设置,因为if函数另外两个参数的表达式,讲来讲去还是那几个函数,大家应该擅于去解析公式中各部分的含义,从函数的基本语法出发。

if函数的条件为:

(LEN(A2)-LEN(SUBSTITUTE(A2,"+","")))=2

有经验的童鞋可能一看到这个公式,就会想到它是查找某个字符在文本中出现的次数。

这里使用了len函数和substitute函数。

len函数是计算字符的长度,substitute函数是替换一个字符为另一个字符,这里是将“+”号替换成空值,而且是全部替换,那么很明显,原文本少去了符号”+“,那么原文本长度减去替换后的文本长度,不就得到了该字符出现的次数!

这仿佛是“偷梁换柱”,是从另一个角度来达到查询的目的,这种思路是很有意思的。

最后我们来看看公式填充后的结果:

excel中如何提取字符的前中后位置

那么总结一下,在近段时间多次介绍关于单元格文本中指定字符的提取,这类场景我们所用到的函数基本还是那几个,什么find、mid、left等等,就是这些基础函数,来完成我们的提取任务。

所以,万变不离其宗,打好函数基础,才是解决问题的基石。

最后ps:如果需要文件来练习,可以私信作者,或者加入交流群。

举报/反馈

以上内容为资讯信息快照,由td.fyun.cc爬虫进行采集并收录,本站未对信息做任何修改,信息内容不代表本站立场。

快照生成时间:2023-02-23 12:45:09

本站信息快照查询为非营利公共服务,如有侵权请联系我们进行删除。

信息原文地址:

mid函数和find函数的基础语法和用法
提取单元格文本中的指定字符和字符串,是excel办公常遇到的问题,而提取的方法比较多,可以使用ctrl+e智能填充,查找和替换结合分列等操作,当然也可以使用函数公式来解决。尤其在
2023-02-23 11:44:00
excel单元格分割填充方法
...、或两个相同符号之间的文本内容,以及提取单元格中某字符最后一次出现位置的后方的所有文本内容,或提取该符号指定次数出现的位置之前或之后的文本内容……总之,关于提取单元格内的指定
2023-02-23 11:43:00
excel中如何提取单元格文本中的指定位数?
...分隔符在文本中的位置,然后再通过函数提取指定位数的字符串。所以作者君在表格中添加了两个辅助列,便于童鞋们理解。首先查找标题信息前的“-”分隔符号的位置,由于之前已经讲过fin
2023-02-24 11:52:00
excel提取原始文件名中的发布日期
...的两个find公式求解出来,但从单元格中可以看出,“-”字符有时多大三四个,因此需要另寻途径。而在excel日常工作中,用于返回最后一个数据的函数,大家可能既熟悉又陌生,熟悉
2023-02-24 11:52:00
excel函数之参数的跨工作表
...的名称。之后我们再套用REPLACE函数,来提取需要显示的字符串,即不带工作簿名称的工作表名。REPLACE函数实际是一个查找替换函数,它的作用是将文本中的指定字符串替换为另
2023-02-24 11:34:00
Excel中公式运算优先级及常用运算符
...符(加减乘除等),关系(比较)运算符,文本连接符(字符连接符),括号等。通过运算符可以构建复杂公式,完成复杂运算。1.算术运算符算术运算符包括加号+,减号或负号-,乘号*,除
2023-03-18 21:57:00
excel函数公式提取指定字符right函数公式
...数快速入门》专栏中介绍过使用不同函数公式来提取指定字符串,而且单元格的内容不仅仅是带有固定规律的前缀或者后缀,也包含文本中间,或者并没有任何规律可循。但今天我们主要是讲具有一
2023-02-23 11:46:00
excel中高效率的日期数据整理方法分享
...现在需要将其中的日期提取出来。提取规则是:❶前三个字符代表的是月份数。❷第5和第6个字符代表两位年份数。❸第7和第8个字符代表两位天数。提取结果如下图:也就是将英文表示的【月
2023-02-22 13:08:00
感谢concat,你拯救了excel的文本处理能力
...变型男,CONCAT函数闪亮登场!它的功能是连接列表或文本字符串区域,只有一个参数,即:=CONCAT(文本区域)相对于CONCATENATE函数或「&
2023-01-29 11:11:00
更多关于科技的资讯:
当煤价下行的寒意与成本上涨的压力双重叠加,煤炭行业正经历一场前所未有的经营大考。如何在市场波动中稳住经营基本盘?怎样在双线挤压下答好逆势增长“优”答卷
2026-01-25 07:32:00
零的突破!云知声中标全国首个省级医保大模型项目,打通医保治理现代化“最后一公里”
2026年开年,智慧医保领域迎来里程碑式突破——云知声智能科技股份有限公司成功中标全国首个省级医保垂直大模型项目“江苏省医保垂直大模型及智能体应用项目”
2026-01-24 17:26:00
香港大学中国商业学院2026年专业研究生文凭课程火热招生中
香港大学中国商业学院2026年专业研究生文凭课程全面启动招生!课程涵盖人工智能、创新管理、增长营销、财务金融、人力资源等前沿及核心商管领域
2026-01-24 17:27:00
当哲思遇见科技:华为阅读携手周国平,探讨如何在独处中沉淀自我
在信息纷扰、节奏加速的时代,何处寻得一方宁静,让思想深度扎根?华为阅读联合北京广播电视台纪实科教频道《我们读书吧》第二季
2026-01-24 17:29:00
1月8日,深圳市精锋医疗科技股份有限公司(以下简称精锋医疗)在香港联合交易所主板成功挂牌上市,成为2026年深圳IPO“第一股”
2026-01-24 17:29:00
赋能普惠,引领向善:龙环汇丰实践获公益节大奖肯定
1月22日,第十五届公益节暨2025ESG影响力年会在北京盛大开幕。本届大会以“15年,共益新篇章”为主题,回顾中国公益事业十五年发展历程
2026-01-24 17:30:00
鸿蒙 6“智感握姿” 让交互体验更“近”一步
你是否也经历过这样“手忙脚乱”的时刻:出差途中单手提包,电话突然响起,另一只手紧紧攥着手机,大拇指却怎么也够不到那段长长的滑动接听条
2026-01-24 17:27:00
蚌埠这场脑机接口大会,让“大脑连接未来”照进现实!
大皖新闻讯 1月23日至25日,安徽省脑机接口创新发展大会在蚌埠隆重启幕。为期三天的盛会汇聚了300余位来自高等院校、科研院所
2026-01-24 16:54:00
固体废物综合治理是生态文明建设的重要内容,也是推进美丽中国建设的关键环节。近日,国务院办公厅印发《固体废物综合治理行动计划》
2026-01-24 12:14:00
鲁网1月24日讯国家新一轮消费品以旧换新及数码智能产品购新补贴政策红利持续释放。作为通信行业标杆企业,山东移动济宁分公司积极响应国家号召
2026-01-24 14:00:00
提供16万多方生态空间 设立7亿元资本活水每日商报讯 眼下,“AI漫剧”正加速走入公众视野。作为人工智能时代下中国文化“新三样”(网文
2026-01-24 10:59:00
固安搭建AI智慧招商平台 30秒生成企业选址方案
1月20日,“立业固安”平台工作人员(中)通过平台向企业推荐合适的选址方案。 万 倩摄河北日报讯(记者刘英)30秒,生成一份定制化的选址方案
2026-01-24 08:19:00
近日,杭州德胜快速路(石德立交至明石路段)、秋石快速路(石德立交-石石立交)两项夜景照明提升工程顺利竣工。具体有哪些改变
2026-01-24 09:28:00
距离过年只剩大半个月时间,今年的年货你已经准备好了吗?本周日,100多个AI高手将集结在杭州东站的中国数谷·未来数智港
2026-01-24 10:29:00
来雄安,体验智能弹性绿波带
来雄安,体验智能弹性绿波带主要道路早晚高峰通行缩短15分钟近日,雄安新区容东片区乐民街的数字化道路上,车辆顺畅通行。 河北日报记者 刘光昱摄河北日报讯(见习记者康晓博)从雄安新区工信科技数据局获悉
2026-01-24 08:27:00