首页

文章

如何利用EXCEL把句子中的某几个字符提取出来?

发布网友 发布时间:2022-04-19 22:06

我来回答

1个回答

热心网友 时间:2023-06-30 14:12

「如何从Excel单元格中的文本值提取指定的数据出来?」

就比如做电商的同学可能经常遇到收货地址需要拆分成省市区的问题。

但是用户提交的地址信息不一定规范,就导致拆分的时候需要人工一个一个识别。

本期内容,以溪带你看看工作中常见的文本拆分与提取的案例问题。

如果有你现在正在遇到的问题,可以直接套用。

「案例列表」

Excel中有专门的文本提取函数,其中mid、left、right分别用于从中间、左侧、右侧提取文本中的指定长度内容。

依次举例说明:

函数参数:

MID(text,start_num,num_chars)

第一个参数是待提取的文本字符串,第二个是开始提取的字符位置数,第三个参数是从文本中提取的字符数

函数参数:

LEFT(text, [num_chars])

第一个参数是待提取的文本字符串,第二个参数不填默认为1,代表提取的字符数。

函数参数:

RIGHT(text, [num_chars])

第一个参数是待提取的文本字符串,第二个参数不填默认为1,代表提取的字符数。

可以注意到,这三个参数,都有几个共同点。

理解了上面这个问题,那解决实际案例的所有「关键点」就在2、3两点上了。

如果地址数据的省市区之间有分隔符的,可以直接使用「数据-分列-按指定字符分列」即可完成拆分。

如果是像下图这种没有分隔符的地址,有两种方法可以实现拆分。

通过上面的3个函数,我们知道,想要拆分提取字符,必须要知道从哪提取,提取多少。

所以,第一步,我们需要知道在地址中,省这个字符的具体位置,以及省字符前面有多少字,就能直接提取出省这个字符串了。

在这里引入两个函数,一个是find,一个是len。

除了查找和统计字符数,Excel也提供findb与lenb函数,函数核心功能与find和len都一样。

唯一的区别就是,带b的函数,代表查找或计数的是字节数,反之是字符数。

其中日语、中文(简体)、中文(繁体)以及朝鲜语一个字符算2个字节数。参考下图理解,find和findb用于查找同学位于以溪123同学中的位置。

回到拆分地址上,那第一个,就是查找省这个字位于地址中的位置。

如此得到省的位置后,我们便可以通过left函数,直接提取出省名称。

前面的是不是都很成功,但是最后一个自治区,就识别不出来了。

主要是我国的行政区划分,不是所有的省级行政区都是省结尾的,还包括有市、区。

所以这里,我们需要通过数组公式,来一次性提取出省、市、区这三个字在地址中的位置。

数组公式如下:

「注意数组公式,需要按照数组公式输入方法使用」

目前只是把地址中省市区出现的位置找到了,还需要对数字进行对比,最小的那个,代表最先出现,也就是省级行政单位的位置。

所以我们使用min函数对其嵌套,得到最小位置数,再使用left函数提取,就能正确获得一级行政区名称。

但是由于min函数不能统计包含#VALUE!的错误值数据,所以我们在find公式中的地址参数那里,手动拼接一个省市区字符串,使其不管怎么样,都不会返回错误值。确保min函数正确运行。

数组公式如下:

至此第一个省级名称,提取完毕。

如果将原地址中的省级名称去除,那么剩下的地址中,就只包含地级和县级行政区地址信息。

使用substitute函数,就可以替换字符串中的指定字符为空,也就是替换为""

函数公式如下:

我们借用了刚刚提取的省级名称,生成了新的地址,基于这个地址我们采用同样的方法提取地级行政区名称。

只需要把省级行政区的公式中的地址A2全部替换成上面的subtitute函数公式,再把对应的地级行政区的后缀,市、区、州、盟,全部修改,就可以了。

最终的数组公式如下:

最后一个直接使用substitute函数替换即可。

数组公式如下:

如果你不想用上面这么长的公式,又或者地址信息没有这么完整,存在不清晰的问题!!

「那就使用方方格子插件来完成地址提取,速度飞快。」

操作路径:方方格子-高级文本处理更多-提取地址-选择地址范围-确定-点击结果存放单元格-确认

最终结果如下图,几秒钟就搞定了。

即使地址不是特别规范,也能大概匹配拆分出来。

当然,最终还需要仔细检查一下是否存在拆分出错的情况。

如下图数据所示:

文本中用-分隔各个信息,其中第二个是产品名称,最后一个是核销状态。

如果是比较规范的数据,就可以先手动提取一行,如下图:

然后按快捷键CTRL+E,智能拆分提取,就能提取出对应的数据。

但是,这个案例,CTRL+E没法很好的拆分出来,比如产品名称,此时可以选择使用函数公式,将产品名称和核销状态提取出来。

提取产品名称:

提取最后一个核销状态:

如下图所示,字母和数字在文本中的不同位置,现在想要将字母和数字全部提取。

从文本中提取字母和数字的公式如下:

如果只想提取字母或者数字,则使用下面的公式:

只提取大小写字母的数组公式,请使用数组三键CTRL+SHIFT+回车确认公式:

如果只提取数字,则数组公式如下:

如果用数组公式觉得太麻烦,也可以使用Excel插件来提取字符,如果你会编写正则表达式,那无论是多奇怪的字符,都可以通过插件运行正则表达式提取指定的字符出来。

插件提取方法路径如下:

方方格子-高级文本处理-更多

同时在提取更多里面,还支持提取链接以及之前说的拆分地址。

在高级提取功能里,支持额外4种提取需求,如图所示。

以上,就是以溪总结的文本字符串提取的相关案例,如果你有实际需求没有在以上案例,可以留言讨论。


玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 使用puppeteer实现将htmll转成pdf 内卷时代下的前端技术-使用JavaScript在浏览器中生成PDF文档 【译】将HTML转为PDF的几种实现方案 变形金刚08动画怎么样 变形金刚08动画的问题 变形金刚08动画日语版剧情介绍 高分!换显卡nvidia控制面板被我卸了,重新安装显卡驱动后没了nvidia控... 我的nvidia控制面板被卸载了 怎么找回啊 卸载后 这个画面看着很奇怪_百 ... 李卓彬工作简历 林少明工作简历 广东工业职业技术学院怎么样 郑德涛任职简历 唐新桂个人简历 土地入股的定义 ups快递客服电话24小时 贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 安徽省徽商集团有限公司经营理念 2019哈尔滨煤气费怎么有税? 快手删除的作品如何恢复 体育理念体育理念 有关体育的格言和理念 什么是体育理念 万里挑一算彩礼还是见面礼 绿萝扦插多少天后发芽 绿萝扦插多久发芽 扦插绿萝多久发芽 炖牛排骨的做法和配料 网络诈骗定罪标准揭秘 “流水不争先”是什么意思? mc中钻石装备怎么做 为什么我的MC里的钻石块是这样的?我想要那种。是不是版本的问题?如果是... 带“偷儿”的诗句 “君不见巴丘古城如培塿”的出处是哪里 带“奈何”的诗句大全(229句) 里翁行()拼音版、注音及读音 带“不虑”的诗句 “鲁肃当年万人守”的出处是哪里 无尘防尘棚 excel中如何提取特定字符串? excel 提取几个特定字符 EXCEL 如何提取单元格中的某几个字符 淘宝“内部”的优惠券到底是不是真的? 淘宝内部优惠券是真的吗 淘宝双十二店铺大额优惠券怎么使用 使用教程 淘宝大额优惠是真的吗? 如何领取淘宝天猫内部优惠券,看完就知道答案了 怎样领取淘宝天猫内部优惠券 所谓淘宝内部优惠券真的存在吗 淘宝内部优惠券怎么返利? 最近看到了很多淘宝内部优惠券是大家是怎么看的 ( 淘宝天猫内部优惠券是骗局吗,为什么那么多人在做? 淘宝天猫内部优惠券是真的吗? 淘宝一些内部优惠券返现是真的吗? 淘宝商家设置大额优惠_有什么影响吗 淘宝的内部优惠券真的能便宜很多吗 淘宝的内部优惠券是真的吗 那种所谓淘宝内部优惠券是套路还是真的? 淘宝大额优惠券内部优惠券怎么取得? 如何提取excel中含某个字符 excel如何提取含有指定字符的字符串? excel中如何从字符串最左边提取字符 EXCEL表格中怎么取前一单元格中的前几个字符 EXCEL怎么截取某几个字符 excel中怎么批量提取一串字符中的几个 EXCEL中如何提取单元格中某一个特定字符前的所有内... Excel怎样从一串字符中的某个指定“字符”前后截取字符 EXCEL 怎么取一个单元格里面的的值的中间某些字符? 如何用函数在excel中提取特定字符后面的字符? excel 如何提取某个字后面的几个文字? linux 内核是什么? CPU逻辑核心数和物理核心数是什么意思? linux怎么查询cpu核心数 linux下怎么查看cpu核数 什么是linux kernel?有什么作用 linux系统是怎么回事?可以简单的介绍下吗? Linux核心是什么意思 如何判断linux下物理cpu数,核数以及是否支持超线程 手机Linux内核是什么意思?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com