在工作中,我们经常要对不同的数据内容进行提取处理,原始数据表经常因为长短不一、类型不一致、机器导出的大数据有规则无格式等,不得不进行进一步整理。这时,文本函数就能起到非常大的作用。
测量长度函数
LEN函数
功能:计算文本字符串的“字符”数。
函数格式:=LEN( text )
LENB函数
功能:计算字符串的“字节”数。
函数格式:=LENB( text )
函数用法:
关于更多字符、字节的知识详见《字节与字符的区别》
截取函数
LEFT函数
功能:最左边开始截取。从字符串的左侧为起始位置,返回指定数量的字符。
函数格式:
=LEFT(text,num_chars)
=LEFT(要提取的字符串,要提取的字符数量)
函数用法:
RIGHT函数
功能:最右边开始截取。从字符串的右侧为起始位置,返回指定数量的字符。
函数格式:
=RIGHT(text,num_chars)
=RIGHT(要提取的字符串,要提取的字符数量)
函数用法:
MID函数
功能:中间截取。以字符串的指定位置为起始位置,返回指定数量的字符串。
函数格式:
=MID(text,start_num,num_chars)
=MID(字符串,开始位置,返回的字符串数量)
函数用法:
与测量长度函数类似,截取函数除了截取字符外,也可以截取字节。
LEFTB()、RIGHTB()、MIDB()
查找函数
FIND函数
功能:查找指定字符串的字符位置,返回的是一个数字。区分大小写,不支持通配符。
函数格式:
=FIND(find_text,within_text,start_num)
=FIND(要查找的字符串,目标字符串,开始位置)
函数用法:
如果目标字符串中有重复的只能查到第1个。
FIND 和 FINDB 区分大小写,并且不允许使用通配符。
SEARCH函数
功能:查找指定字符串的字符位置,返回的是一个数字。不区分大小写,支持通配符。
函数格式:
=SEARCH(find_text,within_text,start_num)
=SEARCH(查找值,在什么里查找,开始位置)
查找函数也可以按照字节查找:
FINDB()、SEARCHB()
替换函数
SUBSTITUBE函数
功能:将文本中的部分字符以指定的新字符替换。根据内容替换。
函数格式:
=SUBSTITUTE(text,old_text,new_text,[instance_num])
=SUBSTITUTE(文本,旧内容,新内容,有重复的旧内容时指定是第几个)
函数用法:
[替换序号]如果有重复的旧字符串用来指定要用新字符替换第几次出现的旧字符串。如果指定了位置,则只替换满足要求的旧文本;否则将会替换原始文本中的每1处旧文本。
--------------------------------------------------------------------
substitute [ˈsʌbstɪˌtjuːt]
v.取代;(以…)代替
n.代用品;代替物;代替者;替补(运动员)
--------------------------------------------------------------------
REPLACE函数
功能:根据字符位置替换文本中的字符串。
函数格式:
'=REPLACE(old_text,start_num,num_chars,new_text)
'=REPLACE(文本,开始位置,要替换掉的字符数,新字符串)
函数用法:
文本函数汇总表
函数 | 功能说明 |
CONCAT 函数 | 将多个区域的文本组合起来,合并后之间没有分隔符。 |
CONCATENATE 函数 | 将几个文本项合并为一个文本项。在 Excel 2016、Excel Mobile 和 Excel 网页版 中,此函数已替换为 CONCAT 函数。 |
ARRAYTOTEXT 函数 | 返回任意指定区域内的文本值的数组。 把指定区域的数据变成数组。 |
CHAR 函数 | 返回由代码数字指定的字符。CHAR函数用的是ANSI字符集。人类字符与计算机二进制之间有一张互相转换编码表,用CHAR函数输入对应的编号就能显示字符。 |
CODE 函数 | 返回文本字符串中第一个字符的数字代码。CHAR函数用的是ANSI字符集。人类字符与计算机二进制之间有一张互相转换编码表。用CODE函数输入字符或字符串就能显示第一个字符对应的编号。 |
UNICHAR 函数 | 返回给定数值引用的 Unicode 字符 |
UNICODE 函数 | 返回对应于文本的第一个字符的数字(代码点)。UNICODE函数使用的是UNICODE字符集。 |
ASC 函数 | 将字符串中的全角(双字节)英文字母或片假名更改为半角(单字节)字符 |
DBCS 函数 | 将字符串中的半角(单字节)英文字母或片假名更改为全角(双字节)字符 |
DOLLAR 函数 | 使用 ¥(人民币)货币格式将数字转换为文本 |
BAHTTEXT 函数 | 使用 ß(泰铢)货币格式将数字转换为文本 |
VALUETOTEXT 函数 | 从任意指定值返回文本 |
VALUE 函数 | 将文本参数转换为数字 |
T 函数 | 将参数转换为文本 |
TEXT 函数 | 设置数字格式并将其转换为文本,详见《TEXT函数用法》 |
NUMBERVALUE 函数 | 以与区域设置无关的方式将文本转换为数字 |
LOWER 函数 | 将文本转换为小写 |
UPPER 函数 | 将文本转换为大写形式 |
PROPER 函数 | 将文本值的每个字的首字母大写 |
EXACT 函数 | 检查两个文本值是否相同 |
FIND、FINDB 函数 | 在一个文本值中查找另一个文本值(区分大小写) |
SEARCH、SEARCHB 函数 | 在一个文本值中查找另一个文本值(不区分大小写) |
FIXED 函数 | 将数字格式设置为具有固定小数位数的文本 |
LEN、LENB 函数 | 返回文本字符串中的字符个数 |
PHONETIC 函数 | 提取文本字符串中的拼音(汉字注音)字符 |
REPLACE、REPLACEB 函数 | 替换文本中的字符 |
SUBSTITUTE 函数 | 在文本字符串中用新文本替换旧文本 |
REPT 函数 | 按给定次数重复文本 |
LEFT、LEFTB 函数 | 返回文本值中最左边的字符 |
MID、MIDB 函数 | 从文本字符串中的指定位置起返回特定个数的字符 |
RIGHT、RIGHTB 函数 | 返回文本值中最右边的字符 |
TEXTAFTER 函数 | 返回给定字符或字符串之后出现的文本 |
TEXTBEFORE 函数 | 返回出现在给定字符或字符串之前的文本 |
TEXTJOIN 函数 | 文本:合并来自多个区域和/或字符串的文本 |
TEXTSPLIT 函数 | 使用列分隔符和行分隔符拆分文本字符串 |
CLEAN 函数 | 删除文本中所有非打印字符 |
TRIM 函数 | 删除文本中的空格 |