专栏名称: 秋叶Excel
和秋叶一起学Excel,免费获取Excel模板大全、插件合集!还有Excel真人视频、图文教程,助你轻松掌握Excel函数、图表、透视表……一起成为办公效率达人!
目录
相关文章推荐
英国大家谈  ·  视频号平台开放广告投放啦! ·  2 天前  
英国那些事儿  ·  泰勒·斯威夫特的1亿美元的房产帝国曝光,网友 ... ·  4 天前  
英国那些事儿  ·  在伦敦的17年里,我搬了22次家!用爷爷留给 ... ·  5 天前  
51好读  ›  专栏  ›  秋叶Excel

这个免费的WPS新函数太绝了,真后悔没早点遇到!

秋叶Excel  · 公众号  ·  · 2024-06-11 11:30

正文

本文作者:小爽
本文编辑:卫星酱


大家好,我是啥都会一点点的小爽~


说到处理字符串的 判断 函数,大家会想到哪些?

FIND 函数+ISNUMBER 函数

SEARCH 函数+ISNUMBER 函数

....


说到处理字符串的 提取 函数,大家会想到哪些?

LEFT 函数/MID 函数/RIGHT 函数

LOOKUP 函数/MATCH 函数

.....


说到处理字符串的 替换 函数,大家会想到哪些?

SUBSTITUDE 函数/REPLACE 函数

.....



关于判断,提取,替换,其实只要一个正则函数就都可以搞定!


最近 WPS 新出了正则函数 REGEX。


它使用的是 正则表达式


正则表达式是一种用于匹配和操作文本的强大工具,它是由一系列字符和特殊字符组成的模式,用于描述要匹配的文本模式。


正则表达式可以在文本中查找、替换、提取和验证特定的模式。


下面大家跟着小爽的步伐,来了解一下这个强大的函数吧~


如果你想学习更多更实用的 Excel 小技巧,提高工作效率、升职加薪 ……


那我推荐你加入 秋叶 Excel 3 天集训营 !每天学习大概 30 分钟,3 天时间 ,你也有可能成为 Excel 高手!

专业讲师、贴心助教、上进学员,都在等你哦~

秋叶 Excel 3 天集训营

原价 99 元

现在 仅需 0 元

报名 还送

100 套 Excel 实用模板

35 个常用函数说明

名额有限,赶紧加入吧!

👇👇👇


正则函数语法



REGEXP 函数的作用: 是利用正则表达式,去匹配原始字符串,得到匹配结果,进行提取/判断/替换操作。


=REGEXP(原始字符串,正则表示式,[匹配模式],[替换内容])


第一参数:原始字符串

第二参数:正则表达式


关于正则表达式,不用怕,后面的案例会带领大家进一步的了解正则语法。


第三参数:匹配模式

第四参数:替换内容


当第三参数为替换时,输入替换的内容,默认替换的值为 0。


从下图中我们可以看到, 第三参数,正则的匹配模式有三种:


0-提取 (默认方式)

1-判断

2-替换



这三个正则匹配模式,其实也可以看出正则函数主要的功能用在 判断字符,提取字符,替换字符 上。


判断字符串



在 Excel 中,当我们需要判断字符串中是否某个字符时,一般使用的是 FIND+ISNUMBER 函数。


如下图:判断下述字符是否存在 Excel。


=ISNUMBER(FIND("Excel",A2))




但是,Excel 还可能存在小写的 Excel,这时我们可以增加查找条件 Excel,然后用 OR 函数判断。



使用正则函数,也很快!


=REGEXP(A2,"(E|e)xcel",1)


那要是数据存在 ExCel,exCel……等等,只有 l 是小写,其余字母都可能是大写和小写字母,那不是要一一写出所有可能结果再查找?


不管多麻烦的判断,一个正则函数,通通可以搞定!


=REGEXP(A2,"(E|e)(X|x)(C|c)(E|e)l",1)



我们来看看这个公式:


原始字符串:A2 单元格

正则表达式:"(E|e)(X|x)(C|c)(E|e)l"


在正则语法中,|  表示或,所以(E|e) 表示 E 或者 e

(E|e):第一个字符是:E 或者 e

(X|x):第二个字符是:X 或者 x

(C|c):第三个字符是:C 或者 c

(E|e):第四个字符是:E 或者 e

l:第五个字符是:l


这也就是对应查找 Excel 的规则,除了最后的 l 字母,其余的可以是大写也可以是小写。


匹配模式: 1 ,对应的是判断,最终返回逻辑值,TRUE/FALSE。


敲黑板:

到这里,我们学会了第一个正则语法:|  代表或的意思。


大家学会了嘛?继续冲鸭!!

提取字符串



在字符串提取中,经常有个噩梦就是提取字符串中的数字。


各种乱七八糟的数字文本混合,使得我们非常的头痛。


比如我们要提取文本中最左边的数字。


使用 LEFT 函数+LOOKUP 函数。


=-LOOKUP(9^9,-LEFT(A2,ROW($1:$15)))



但是我们要提取的是第一个数字。那就得换另外的公式。


=LOOKUP(9^9,MID(A2,MATCH(1,MID(A2,ROW($1:$15),1)^0,0),ROW($1:$15))*1)



头皮疼!!!!/(ㄒoㄒ)/~~



不过现在,我们有正则函数,一下子就能搞定!


=REGEXP(A2,"\d+")



搭配 INDEX 函数,我们想取第几个就取第几个!



除了提取数字外,还可以提取非数字的字符串。


=REGEXP(A2,"\D+")



来来来,我们来看看公式~


公式中,主要涉及 两个正则语法


\d+,表示匹配一个以及以上数字,所以将字符串中全部是数字的匹配出来 ;

\D+,则表示匹配一个以及以上的非数字,所以将字符串中全部是非数字的匹配出来。


似不似很方便!!



敲黑板:


这里我们提到两个正则语法。


\d:表示所有的数字,相当于[0-9];

\D:表示所有的非数字,相当于[^0-9];

+:加号表示量词,意思是一个到多个。

另外的量词有* ,表示 0 到多个;

? 表示 0 个或者 1 个。


到这里,小伙伴们又学到几个正则语法了,太棒了,继续冲鸭~

替换字符串



当我们清洗数据的时候,总有一些烦人的备注在捣蛋。所以我们需要将括号中的内容通通删除掉。


通过 FIND 函数查找两个括号的位置,提取内容后,用 SUBSTITU TE 函数将它替换掉!


=SUBSTITUTE(A2,MID(A2,FIND("(",A2),FIND(")",A2)-FIND("(",A2)+1),"")



传统做法好麻烦。


别怕!


有了正则函数,也是一个函数搞定!







请到「今天看啥」查看全文