Excel常见文本清洗函数

Posted notfind

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Excel常见文本清洗函数相关的知识,希望对你有一定的参考价值。

1.=LEFT(text,[num_chars])

? 函数RIGHT具有相似功能

技术图片

例如选出K列中,从左数前一个字符:= LEFT(k2,1)

2.=FIND(find_text,within_text,[start_num])

? 如果想要提取的数据长度不一致,仅使用LEFT函数就不能解决了,例如想要得到k前面的数字

技术图片

可以先使用FIND函数,得出k所在位置,然再使用LEFT函数

技术图片

使用FIND函数在T列得到"k"的位置:=FIND("k",S2,1)
使用结合得到的"k"的位置,LEFT函数:=LEFT(S2,T2-1)
由于不包含"k",所有使用T2-1
如果有些是"K"(大写),有些是"k"(小写),可以先进行替换
此外替换还具有删除的功能,在“替换为”中输入空

3.=CONCATENATE(text1[,text2],[text3])

对文本(或几个单元格中的文本)进行拼接

对上面的得到的U列中的每个数字后加上''元'':=CONCATENATE(U2,"元")
可以使用:=U2&"元"

4.=REPLACE(old_text,start_num,num_chars,new_text)

文本替换

技术图片

将“宠物”改为“生活”:=REPLACE(U13,1,2,"生活")

5.=SUBSTITUTE(text,old_text,new_text,[instance_num])

?技术图片

将S列中的ABC删除掉:可以先使用:=RIGHT(s2,3) (手动输入ABC也行)得到其中要替换的字符(old_text)
=SUBSTITUTE(S2,T2,"")

6.=TRIM(text)

? 去出字符两端的空格

7.=LEN(text)

获取字符长度

8.=MID(text,start_num,num_chars)

截取字符串中间的文字

例如:截取图中S列中的数字(数字前面的第一个字符均为“B”)

技术图片

1.先获取“B”的位置:=FIND("B",S2,1)
2.获取“C”的位置(等于文本长度):=LEN(S2)
3.使用MID函数:=MID(S2,T2+1,U2-T2-1)

以上是关于Excel常见文本清洗函数的主要内容,如果未能解决你的问题,请参考以下文章

文本分类炼丹实录(上篇)

微博excel数据清洗(Java版)

数据清洗 常用正则表达式大全

常用的 Excel 函数

正则表达式 最近在做文本清洗,遇到(,,!或者?!!,),想要清除第一个逗号后面的所有多余标点符号

第三周:Excel分析