前言:
当前你们对“文本分割算法”大致比较着重,我们都需要分析一些“文本分割算法”的相关知识。那么小编在网摘上网罗了一些有关“文本分割算法””的相关知识,希望同学们能喜欢,咱们一起来学习一下吧!小伙伴们好啊,今天咱们一起来学习TEXTSPLIT函数。这个函数专门用于字符拆分,目前可在Excel 2021和最新版的WPS表格中可以使用,常用写法为:
TEXTSPLIT(待拆字符,[列分隔字符],[行分隔字符],[是否忽略空],[是否区分大小写],[出错时返回什么])
列分隔字符或行分隔字符可以只用其一,也可以同时使用。并且允许同时有多个不同的行列分隔符。
接下来咱们就看看这个函数的部分基础用法:
1、科目拆分
如下图,需要按分隔符“/”,来拆分A列中的会计科目。
B2输入以下公式,下拉即可。
=TEXTSPLIT(A2,"/")
本例中,TEXTSPLIT的第二参数使用"/"作为列分隔符号,其他参数省略。
2、忽略空字符
如下图,A列待拆分字符中,有部分间隔符号出现了多次,使用以下公式,可以在拆分时忽略分隔符号之间的空字符。
=TEXTSPLIT(A2,"/",,1)
本例中,第二参数使用"/"作为列分隔符号,省略了行分隔符号的参数。第三参数使用1或TREU,表示忽略空字符。
3、同时设置多种分隔符号
如下图,A列待拆分字符中,有多种类型的间隔符号,包括逗号、分号,斜杠和顿号,使用以下公式,可以按常量数组的形式将多种分隔符号写到一起。
=TEXTSPLIT(A2,{"/","、",",",";"})
公式中的列分隔符号为{"/","、",",",";"},即斜杠"/"、逗号","、顿号"、"和斜杠"/"。每一个符号都加上双引号,符号之间用半角的逗号或半角分号作为间隔,最后用一组花括号包含起来。
TEXTSPLIT将依次按花括号中不同类型的分隔符拆分到各列。
4、提取混合内容中的金额再求和
如下图所示,A列是一些平台优惠信息,希望提取出其中的金额部分,并进行求和汇总。
B2单元格输入以下公式,向下复制即可。
=SUM(1*TEXT(TEXTSPLIT(A2,{"-",";"}),"0%;0;0;!0"))
先使用短横杠"-"和分号";",对A2单元格中的内容进行拆分,得到结果为:
{"平台新人券","8.00","购物补贴抵扣金额","1.01"}
再使用TEXT函数,根据拆分后的格式进行转换。
TEXT函数的格式代码"0%;0;0;!0",表示大于0的显示为百分比形式,也就是保留了两位的小数。小于0和等于0的返回0,文本部分强制显示为0。
TEXT函数的结果为文本格式,乘以1转换为数值,最后用SUM函数求和。
5、合并练习题和参考答案
如下图所示,A列是邵版给出的一些填空题,B列是学霸“广州-游”给出的参考答案,希望将填空题和答案内容合并到一起。
C2单元格输入以下公式,向下复制:
=TEXTJOIN(TEXTSPLIT(B2,,"、"),0,TEXTSPLIT(A2,,"__"))
公式中的TEXTSPLIT(B2,,"、")部分,将B2单元格中的参考答案按顿号拆分为4行,稍后的计算中将用作TEXTJOIN函数合并字符时的间隔符号:
公式中的TEXTSPLIT(A2,,"__")部分,将A2单元格中的题目按短横线拆分为4行:
最后用TEXTJOIN函数合并A2单元格拆分后的字符。间隔符号为B2单元格拆分后的内容。
TEXTJOIN函数的第二参数使用0,表示包括待合并内容中的空单元格。
6、按部门拆分姓名
如下图所示,A列是邵氏公司的一些部门和人员姓名混合内容。希望按部门将姓名拆分到多行多列。
学霸“醉清风”在C3单元格输入以下公式,即可得到正确结果:=TEXTSPLIT(CONCAT(IF(RIGHT(A2:A13)="部","A","")&A2:A13&","),",","A",TRUE,,"")
公式中的这部分IF(RIGHT(A2:A13)="部","A","")&A2:A13&",",先用RIGHT函数提取A列内容的最后一个字,然后用IF函数判断是否为“部”,如果最后一个字符为“部”,IF函数返回字符“A”,否则返回一个空文本。再分别与A2:A13单元格区域中的各个字符串以及逗号进行合并。得到以下一组字符串:
{"A销售部,";"西门长海,";"赵德柱,";"叶四娘,";"杨了二过,";"A财务部,";"高大毛,";"曹公公,";"轩辕梅六,";"A质保部,";"菜花婆婆,";"西门柔,"}
接下来使用CONCAT函数将这些内容合并到一起:
"A销售部,西门长海,赵德柱,叶四娘,杨了二过,A财务部,高大毛,曹公公,轩辕梅六,A质保部,菜花婆婆,西门柔,"
最后使用TEXTSPLIT函数将以上内容进行拆分,列间隔符号为逗号,行间隔符号为字符“A”。
TEXTSPLIT函数第三参数使用“TRUE”,表示忽略空单元格。
最后一个参数使用空文本,表示拆分不到内容的单元格显示为空白。
好了,今天的分享就是这些,祝各位一天好心情~~
图文制作:祝洪忠