Excel用于文本清洗的函数
1.find函数
说明:函数find用于在第二个文本串中定位第一个文本串,并返回第一个文本串的起始位置
比如第二文本串中有两个第一文本串,根据起始位置定,返回的是与之相匹配的最前面的第一文本串的位置
语法:=find(find_text,within_text,[start_num])
备注:find_text 必需,为查找的文本
within_text 必需,为包含要查找文本的文本
start_num 可选,指定开始进行查找的字符
within_text中的首字符是编号为1的字符。如果start_num,则默认其值为1.
find区分大小写,并且不允许使用通配符。
事例:A1=10k-20k
(1)=find("k",A1,1) 返回结果是3
(2)=find("k",A1,2)返回结果是3
(3)=find("k",A1,4)返回的结果是7
注:返回的是都是从1开始计数,需要根据start_num判断要查找的第一文本的位置
2.left函数
说明:left从文本字符串的第一个字符开始返回指定个数的字符
语法:left(text,[num_chars])
备注:text 必需,包含要提取的字符串的文本字符串
num_chars 可选,指定要由left提取的字符的数量
如果num_chars大于文本长度,则left返回全部文本
如果省略num_chars,则默认其值为1.
事例:A2=10k-20k
(1)取出10,则第一步需要根据find函数确定10k中"k"的位置,第二步根据left函数取值
=find("k",A2,1) 返回3
=left(A2,3-1) 返回10
(2)取出20
=find("-",A2,1) 返回4
=right(A2,4-1) 返回20k
用<替换>按钮将k替换成空格
3.right函数
类似left函数的使用
4.mid函数
说明:返回文本字符串中从指定位置开始的特定数目的字符,该数目由用户指定
语法:=mid(text,start_num,num_chars)
备注:text 必需,包含要提取字符的文本字符串
start_num 必需。文本中要提取的第一个字符的位置。文本中第一个字符的start_num为1,以此类推
num_chars 必需。指定希望mid从文本中返回字符的个数
事例:A2=10k-20k
(1)=mid(A2,1,2) 返回10
(2)提取20
第一步找到"-"的位置 =find("-",A2,1) 返回结果是4
第二步找到第2个"k"的位置=find("k",A2,4)返回结果是7
=mid(A2,4+1,2) 返回20
5.concatenate函数
&"|concatenate
(1)当需要连接的量少时,可以选择"&"连接符
事例:=8&"k" 返回8k
="big"&"_"&"small"返回 big_small
(2)concatenate函数
语法:concatenate(text1,text2,...)
=concatenate(8,"k") 返回8k
=concatenate("big","_","small") 返回 big_small
6.replace函数
说明:根据指定的字符数,replace将部分文本字符串替换为不同的文本字符串,是根据文本位置寻找替换
语法:replace(old_text,start_num,num_chars,new_text)
old_text:必需 为替换其部分字符的文本
start_num:必需 old_text中要替换为new_text的字符起始位置
num_chars:必需 old_text中希望replace使用new_text来进行替换的字符数量
new_text:必需 将替换old_text中字符的文本
事例:A2=10K-20K
=replace(A2,4,2,"*") 返回10K*0K
7.substitute函数
说明:在文本字符串用new_text替换old_text。如果需要在某一文本字符串中替换指定的文本,请使用函数substitute;如果需要在某一文本字符串中替换特定位置处的任意文本,请使用replcae函数。
语法:=substitute(text,old_text,new_text,[instance_num])
备注:text 必需,需要替换其中字符的文本,或对含有文本(需要替换其中字符)的单元格的引用
old_text 必需,需要替换的文本
new_text 必需,用于替换old_text的文本
instance_num 可选,指定要用new_text替换old_text的事件。如果指定了instance_num,则只有满足要求的old_text被替换。否则,文本总出现的所有的old_text都会更改为new_text。
事例:A2=10k-20k
(1)=SUBSTITUTE(M2,"k","千") 返回结果10千-20千
(2)=SUBSTITUTE(M2,"k","千",1) 返回结果10千-20k
(3)=SUBSTITUTE(M2,"k","千",2) 返回结果10k-20千
8.trim函数
说明:除单词之间的单个空格外,移除文本中的所有空格
语法:trim(text)
备注:text 必需,要从中移除空格的文本
事例:=trim(" a big house ") 返回a big house
从公式的文本中移除前导空格和尾随空格
9.len函数
说明:返回文本字符串中的字符个数
语法:len(text)
备注:text 必需,要查找其长度的文本。空格将作为字符进行计数
事例:=len("a big house ")返回12,中间和结尾的空格都算作字符