病毒安全知识,电脑网络技术,手工杀毒方法,答疑解决笔记

导航

« 硬盘显示Bitlocker正在等待激活,然而在硬盘管理里又显示Bitlocker已加密电脑桌面老跳出搜索窗口,还关不掉,最后我禁用了笔记本电脑自带的键盘 »

为了去掉网卡MAC地址中的横线和冒号,我使用两个函数:TEXTJOIN和TEXTSPLIT

开头照例是回忆或吐槽,可以跳阅正文。

0

刚来这家公司时,才知道只有我一个IT人员,老板还很高兴地说,你看,正好原来的IT要走。不该走的走了,我就是来填坑的。

一直以为IT会有个部门,没有一大班人,也有好几个,其乐融融,互相学习帮助提高进步,结果就我一个人,什么事都找我,管你懂不懂,得自己找资料自己学,做一件学一件,东偷西抄,坚持下来,技术不一定提高很多,记忆力倒是最重要的,解决问题就靠个记性好,只要不是新问题,我能抢答。

1

一些网络管理场景中,需要把网卡MAC地址按固定格式录入,但收集来的MAC地址格式各异,有的是AA:BB:CC:DD:EE:FF,还有的是AA-BB-CC-DD-EE-FF,需要把它们整合成不带符号的格式:AABBCCDDEEFF。

开始我使用Excel的SUBSTITUTE函数,它的语法是

SUBSTITUTE(text,old_text,new_text,[instance_num])

参数中,前三个text、old_text、new_text是必需,text是需要替换其中字符的文本或单元格,old_text需要被替换的文本或字符,new_text是用于替换old_text 的文本或字符。最后的instance_num是可选的,指定要将第几个old_text 替换为new_text,如果不指定,可以不写。

另外SUBSTITUTE函数区分大小写。反正我只替换中横线和冒号,倒不用管这个问题,只要用空字符替换就成:

SUBSTITUTE(SUBSTITUTE(A1,"-",""),":","")

检查替换两次,完成整个替换过程。

不过后来又出现一种形式,一些同事抄报的MAC地址是手录的,直接使用中文冒号来分隔,于是上面的Excel公式来改成三个SUBSTITUTE。但是后来想想,有中文冒号,也一定有中文的横线符号,如果分隔符号增多,这个公式不是也要再加SUBSTITUTE,为了让公式漂亮点,我把 SUBSTITUTE换成了TEXTJOIN和TEXTSPLIT。

TEXTSPLIT是分隔函数,可以分隔行和列,它的语法如下:

TEXTSPLIT(text,col_delimiter,[row_delimiter],[ignore_empty], [match_mode], [pad_with])

text是要拆分的文本,col_delimiter是列分隔符,这两个是必须出现的,后面的参数都是可选的。row_delimiter行分隔符;ignore_empty默认值为FALSE,允许连续的分隔符将,就是多个连续的分隔符将会分隔出空的单元格,如果是TRUE,多个连续的分隔符将当成一个处理,忽略空的单元格出现;match_mode默认值为0,区分大小写,如果为1不区分大小写;pad_with,用于数据不足时的填充数据,默认值为 #N/A。

 

后面的参数不理解也不要紧,反正用的少,使用默认值就行。最关键的还有一条,如果存在多个分隔符,使用数组常量,正适合我的情况,我目前有3个分隔符,且只要分列(加上分行,将有更多用处,有兴趣的可以自己试试,也不用记,反正现在有AI会帮你记)。

这样可以把英文中横线、英文冒号和中文冒号作为列分隔符,

TEXTSPLIT(A1,{"-",":",":"})

分隔符使用后就相当于消失了,一组MAC地址就分成了不带符号的6个部分,下面就是要把这6个部分组合起来,需要用到TEXTJOIN,它的语法:

TEXTJOIN(分隔符, ignore_empty, text1, [text2], …)

分隔符是把各部分文本串起来时使用的连接符,我这里是要把6个部分的直接串起来,所以不用任何符号,就用空字符""。ignore_empty也是必需的参数,如果为TRUE,则忽略空白单元格,FALSE则保留空单元格作为一列数值加入,只有有明显分隔符时才能看出区别:

=TEXTJOIN("、",TRUE,"aaa","","bbb") 结果是aaa、bbb

=TEXTJOIN("、",FALSE,"aaa","","bbb") 结果是aaa、、bbb

后面的text1、text2等就是要合并的字符串或单元格。

由此我的SUBSTITUTE公式改成:

TEXTJOIN("",TRUE,TEXTSPLIT(A1,{"-",":",":"}))

这样是不是更简洁,以后有新的符号加入,直接在数组中添加就行了。

以上的TEXTJOIN和TEXTSPLIT两个函数在较新版本的Excel中支持,如果你的Excel没用,除了升级外,可以试试较新版的WPS,如果不想换,只能考虑用老的函数替代了。 


>> 除非说明均为原创,如转载请注明来源于http://www.stormcn.cn/post/2413.html

发表评论(无须注册,所有评论在审核通过后显示):

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

  • 微信订阅号
    微信订阅

最新发表

最新评论及回复

本站出现的所有广告均不代表本人及本站观点立场 | 关于我 | 网站地图 | 联系邮箱 | 返回顶部
Copyright 2008-2020 www.stormcn.cn. All Rights Reserved. Powered By Z-Blog.

闽公网安备 35010202000133号