点击上方「猪爸爸学Excel」关注我们
朋友在国外考驾照,看到前边路标提示左转,那哥们不确定,就问考官:“turn left?”,教官答:“right”,然后,这会他在准备第二次的考试中……
笑话估计比较冷哈,不过现在已经是大夏天了,来点冷笑话,也是可以的嘛,请不要砸我砖头~~
为什么要讲这个冷笑呢?因为今天,我们要来说说提取文字这件事,最常见的函数就是left,right,mid这三个好基友了。不多废话,我们来看个最简单的例子。
如图,我们想要把地址分拆成市、区、村,这里,数据都是最有规律的,我们来看下怎么做。
1、 提取左边三个文字的市
这里因为市名都是三位的,所以我们在B2单元格输入公式=LEFT(A2,3),下拉,搞定
2、 提取中间的区
这里因为区名,都是在该字段的第4位开始,一共占3个字符,所以我们在C2单元格输入公式=MID(A2,4,3),下拉,就可以了
3、 提取最后的村名
我们观察到,村名也同样都是占该字段最后3个字符,所以我们在D2单元格输入公式=RIGHT(A2,3),下拉,搞定。
我们来增加点难度,如下图,市区村的长度都不同,这个怎么弄呢?没问题,我们请出三兄弟共同的好搭档find函数和len函数。
4、提取市
先通过find函数,找到“市”字在第几位字符,然后再用left函数来提取,在B2单元格输入公式=LEFT(A2,FIND("市",A2)),下拉
5、提取区
同样,先通过find函数,找到“市”在第几位字符,还有“区”在第几位字符,再结合mid函数来进行提取,在C2单元格输入公式==MID(A2,FIND("市",A2)+1,FIND("区",A2)-FIND("市",A2)),这里,我们是用FIND("市",A2)+1,判断在第几位开始提取;再用FIND("区",A2)-FIND("市",A2),判断要提取几位字符,再结合mid函数,就可以了。
6、提取村
在D2单元格输入公式=RIGHT(A2,LEN(A2)-FIND("区",A2)),这里,我们用len函数,求得字段的字符个数,然后减去到“区”那里的字符个数,剩下的就是村所占的字符数了,再用right函数直接进行提取
函数科普时间:
Left函数
LEFT 从文本字符串的第一个字符开始返回指定个数的字符。
LEFT(text,[num_chars]),
Text 就是包含要提取字符的文本字符串;
[num_chars]就是指要提取几位字符,必须大于或等于0,如果省略就是默认为提取1位。
right函数与left类似,只不过就是从右边也就是文本字符串的最后一个字符开始提取。
Mid函数,MID 返回文本字符串中从指定位置开始的特定数目的字符。
MID(text,start_num, num_chars)
Text同样就是包含要提取字符的文本字符串;
start_num 开始位数,指从第几位开始提取
num_chars,从开始指定的位数,要提取几位字符
len函数,返回查找的文本的字符数。如下图所示
大西红市丑苹果区超级甜村-12个字符
番茄市梨子区好吃村-9个字符
豆市番区红村-6个字符
好了,今天的分享就到这里,今天这个提取,还是很有规律的,如果不用函数,也可以直接用分列功能来实现,具体可以参考第二篇文章~~
求关注
求转发