hongkongdoll face 行使 3 个新增的 Excel 正则函数进行文本插入、文本拆分
原文标题:《这 3 个新增的 Excel 正则函数hongkongdoll face,太牛 X 了!》
众人好,我是会 Excel 数据科罚的小爽~
之前咱们讲过 WPS 新增的、一个相称庞大的文本科罚函数 —— Regex 函数。
它既不错作念文本判断,也不错作念文本索要,以至不错作念文本替换。
Regex 函数其实即是底下三个正则函数的王人集版块。
分别是 :
文本判断:Regextest
文本索要:Regexextract
文本替换:Regexreplace
如今,Office 365 中的 Excel,也更新这三个正则函数了,WPS 和 Excel 的正则函数语法差未几,众人不错对照着学习。
鉴于有小伙伴思望望进阶少量的正则函数。
今天,小爽就不竭来聊聊正则函数。
咱们在平日责任中,除了需要对文本进行判断,索要,替换外,还可能需要对文本进行插入,拆分等操作。
众人跟我沿途往下看,进一步意志其他的正则抒发式。
正则抒发式是一种用于匹配和操作文本的庞大器用,它是由一系列字符和稀疏字符构成的模式,用于态状要匹配的文本模式。
正则抒发式不错在文本中查找、替换、索要和考证特定的模式。
PS.本文使用 Excel 内部的正则函数进行演示。
1、文本插入
如下图,咱们需要在汉文和英文 / 数字中,插入一个分隔符「-」,以便更好地检察信息。
传统的作念法是:行使字节数细目文本的位置,然后进行替换。
=REPLACE(A2,LENB(A2)-LEN(A2)+1,0"-")
这种作念法也不错,然则若是单位格起原不是文本,公式就会出错!!
是以,最佳的谬误即是行使庞大的正则函数!
如下图:
=REGEXREPLACE(A2"(*[一-龟])(\w+)""$1-$2")
咱们来望望这个公式:
忘忧草官网在线播放=REGEXREPLACE(A2"(*[一-龟])(\w+)""$1-$2")
Regexreplace 语法:
=REGEXREPLACE (字符串,正则抒发式,替换抒发式,[指定替换实例],[是否区别大小写])
字符串:A2 单位格hongkongdoll face
正则抒发式:"(.*[一-龟])(\w+)"
替换抒发式:"$1-$2"
假定字符串为 "excel 小爽 xiaoshuang"。
(.*[一-龟]):第一分组
.* 除换行符之外的淘气字符,* 代表 0 到多个
[一-龟]:背面紧接着一个中翰墨符
第一组匹配到的字符为 excel 小爽。
(\w+):第二分组:
\w:在正则抒发式中,它暗意字母数字字符,包括所有这个词字母(a-z、A-Z)和数字(0-9)的字符。它等同于 "[A-Za-z0-9_]"
\w+ 也即是代表一个到多个
第二组匹配到的字符为 xiaoshuang。
替换抒发式:"$1-$2"
$1 代表第一分组的本色,也即是 "excel 小爽"
$2 代表第二分组的本色,也即是 "xiaoshuang"
"$1-$2",也即是 "Excel 小爽-xiaoshuang"。
拆分函数 Textsplit 现在还不成进行正则语法拆分,不外咱们不错借助正则函数 Regexextract!
2、文本拆分
如下图所示:我思索要出日历之间的姓名。
用 Textsplit 函数来作念,需要先把数字和分隔符进行数组拼接后,再进行拆分。
=TEXTSPLIT(A2,VSTACK(SEQUENCE(10,1,0)"-")1)
若是用正则函数来作念,不需要像拆分函数那样进行拼接,唯一把需要拆分的字符,放在中括号中取反即可。
=REGEXEXTRACT(A2"[^0-9-]+"1)
Regexextract 语法:
=REGEXEXTRACT (字符串,正则抒发式,[匹配方式])
匹配方式中:
0 - 第一个匹配项 (默许值)
1 - 所有这个词匹配项
2 - 拿获第一个匹配项的组
第三参数为 1,因为咱们是要匹配所有这个词的匹配项。
=REGEXEXTRACT(A2,"[^0-9-]+",1)
重心看第二参数:正则抒发式
"[^0-9-]+"
[] 中括号:用于指定一个字符王人集或区间,不错让正则抒发式匹配特定的字符或边界。
^ 号:在字符王人集起原暗意取反,即匹配除字符王人集之外的其他字符。
- 号:在字符王人鸠合间暗意边界,然则若是它在起原或斥逐,则只暗意无为字符-
该抒发式的真谛是:取除了 0 到 9 和-之外的字符,取一个简略多个,尽可能多的匹配。
只匹配数字和-之外的字符,是不是很是于按照数字和-,进行拆分了呢~
3、临了的话
今天咱们再一次学到新的正则抒发式:
在 Regexreplace 函数中:
正则抒发式,() 代表分组,有几个括号就代表几个分组
替换抒发式,$n 代表第几个分组
咱们不错行使分组天简直插入字符串
\w 代表,数字字母下划线 [0-9a-zA-Z_]
\W 即是,非数字字母下划线 [^0-9a-zA-Z_]
拆分中,咱们不错通过中括号取反的方式进而终了正则拆分:
[] 代表字符集,中括号中起原 ^ 代表取反 [^..]
那众人也不难思到:
\d 取反是 \D,也即是 [^\d] 和 \D 是通常的。
好了,本文就到这里抵制啦~
看到这里,小伙伴是不是认为,正则也即是这样一趟事呢~
背面著作咱们会接着不竭聊聊更深的正则语法。
本文来自微信公众号:秋叶 Excel (ID:excel100),作家:小爽
告白声明:文内含有的对外跳转流畅(包括不限于超流畅、二维码、口令等形状)hongkongdoll face,用于传递更多信息,甘愿甄选时代,成果仅供参考,IT之家所有这个词著作均包含本声明。