龙空技术网

字符拆分,这个函数真厉害

Excel之家 824

前言:

当前各位老铁们对“文本分割算法例题”大概比较重视,你们都想要剖析一些“文本分割算法例题”的相关文章。那么小编在网摘上收集了一些有关“文本分割算法例题””的相关资讯,希望朋友们能喜欢,大家快快来学习一下吧!

小伙伴们好啊,今天咱们一起来学习专门用于字符拆分的TEXTSPLIT函数。这个函数目前可以在Excel 365以及最新的WPS表格中使用,常用写法为:

TEXTSPLIT(待拆字符,[列分隔字符],[行分隔字符],[是否忽略空],[是否区分大小写],[出错时返回什么])

列分隔字符或行分隔字符可以只用其一,也可以同时使用。并且允许同时有多个不同的行列分隔符。

设置多种分隔符号

如下图,A列待拆分字符中,有多种类型的间隔符号,包括逗号、分号,斜杠和顿号,使用以下公式,可以按常量数组的形式将多种分隔符号写到一起。

=TEXTSPLIT(A2,{"/","、",",",";"})

公式中的列分隔符号为{"/","、",",",";"},即斜杠"/"、逗号","、顿号"、"和斜杠"/"。每一个符号都加上双引号,符号之间用半角的逗号或半角分号作为间隔,最后用一组花括号包含起来。

TEXTSPLIT将依次按花括号中不同类型的分隔符拆分到各列。

合并练习题和参考答案

如下图所示,A列是邵版给出的一些填空题,B列是学霸“广州-游”给出的参考答案,希望将填空题和答案内容合并到一起。

C2单元格输入以下公式,向下复制:

=TEXTJOIN(TEXTSPLIT(B2,,"、"),0,TEXTSPLIT(A2,,"__"))

公式中的TEXTSPLIT(B2,,"、")部分,将B2单元格中的参考答案按顿号拆分为4行,稍后的计算中将用作TEXTJOIN函数合并字符时的间隔符号:

公式中的TEXTSPLIT(A2,,"__")部分,将A2单元格中的题目按短横线拆分为4行:

最后用TEXTJOIN函数合并A2单元格拆分后的字符。间隔符号为B2单元格拆分后的内容。

TEXTJOIN函数的第二参数使用0,表示包括待合并内容中的空单元格。

按部门拆分姓名

如下图所示,A列是邵氏公司的一些部门和人员姓名混合内容。希望按部门将姓名拆分到多行多列。

学霸“醉清风”在C3单元格输入以下公式,即可得到正确结果:=TEXTSPLIT(CONCAT(IF(RIGHT(A2:A13)="部","按行","按列")&A2:A13),"按列","按行",1,,"")

公式中的这部分IF(RIGHT(A2:A13)="部","按行","按列"),先用RIGHT函数提取A列内容的最后一个字符,再用IF函数判断是否为“部”,如果最后一个字符为“部”,IF函数返回字符“按行”,否则返回“按列”。

再分别与A2:A13单元格区域中的各个字符串进行合并。得到以下一组字符串:

{"按行销售部";"按列西门长海";"按列赵德柱";"按列叶四娘";"按列杨了二过";"按行财务部";"按列高大毛";"按列曹公公";"按列轩辕梅六";"按行质保部";"按列菜花婆婆";"按列西门柔"}

接下来使用CONCAT函数将这些内容合并到一起:

"按行销售部按列西门长海按列赵德柱按列叶四娘按列杨了二过按行财务部按列高大毛按列曹公公按列轩辕梅六按行质保部按列菜花婆婆按列西门柔"

最后使用TEXTSPLIT函数将以上内容进行拆分,列间隔符号为字符“按列”,行间隔符号为字符“按行”。

TEXTSPLIT函数第三参数使用1,表示忽略空单元格。

最后一个参数使用空文本,表示拆分不到内容的单元格显示为空白。

好了,今天的分享就是这些,祝各位一天好心情~~

图文制作:祝洪忠

标签: #文本分割算法例题