Super Excel Man

用1%的Excel基础搞定99%的职场问题

做一个超级实用的Excel公众号

Excel是门手艺玩转需要勇气

数万Excel爱好者聚集地

正则w_正则文法_php正则w

往期回顾(点击查看):

(1)

(2)

(3)

(4)

正则表达式的基础外壳函数(wps版):

函数是基于正则表达式,对复杂文本进行匹配、提取和替换的函数。

基本语法结构:

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

匹配模式是可选项,0或忽略表示提取,1表示判断是否包含,2表示替换。

替换内容是可选项,仅在匹配模式为2时有效,用来替换匹配的内容。

今天我们主要讲讲第(5)大类的分组与引用。我们再来结合几个具体的小例子,并运用函数代入,感受一下分组与引用的含义与作用。

5.分组与引用

正则文法_正则w_php正则w

职场实例1:

比如某些邮箱网站要求我们注册邮箱的时候必须由用户名和域名组成,用户名仅限于我们用字母、数字或下划线组成。现在我们想要分别提取邮箱的用户名和域名。例如:@qq.com:用户名为,域名为qq.com。

我们可以这样输入函数公式:

=(A2,”^(w+)@(.+)$”,2,”1″)

正则表达式解析:

(w+):定位用户名(分组1)

其中w:匹配单词字符(字母、数字、下划线)

+:匹配前面元素的1次或多次

这样以字母字符串开始的“”就作为一个分组被精准定位到了。

(.+):定位域名(分组2)

.:匹配任意单个字符(除换行符)

+:匹配前面元素的1次或多次

这样以任意单个字符组成的字符串结尾的“qq.com”就作为第二个分组被精准定位到了。

函数第3参数设置为2,代表替换模式。

第4参数替换为正则表达式:”1″:表示替换为第一个分组的内容。这样最终就间接提取到了第一分组的用户名:“”。

正则w_php正则w_正则文法

如果想要提取域名的话,只需要这样输入函数:

=(A2,”^(w+)@(.+)$”,2,”2″)

只需要将第4参数替换为正则表达式:”2″:表示替换为第二个分组的内容。这样最终就间接提取到了第二分组的域名:“qq.com”。

正则w_php正则w_正则文法

职场实例2:

比如我们想要重新设置日期格式。想要将A列单元格的日期内容格式由YYYY/MM/DD修改为DD-MM-YYYY这种格式的。例如将日期由2023/10/05转换为05-10-2023。

我们可以这样输入函数公式:

=(A2,”(d{4})/(d{2})/(d{2})”,2,”3-2-1″)

正则表达式解析:

(d{4}):定位年份(作为分组1)

d:匹配数字(等价于[0-9])

{4}:精确前面元素4次。

也就是说用{4}控制前面的数字为4为数字,也就是年份的数字个数。

(d{2}):定位月(分组2)定位日(分组3)

因为本例中的月和日都是固定的两位数字。

3-2-1:表示按“日-月-年”重组日期数据。

正则文法_正则w_php正则w

职场实例3:

比如我们想要验证产品编号中是否含有重复的编码。例如A列单元格中的编码”DEPT-001-DEPT-001″,其中“DEPT-001”重复了两次相同的,那么这样我们就判定是重复的,返回逻辑判断真值TRUE。再例如A列单元格中的编码”DEPT-001-DEPT-002″,其中“DEPT-001”与“DEPT-002”是不同的,那么这样我们就判定是没有重复的,返回逻辑判断假值FALSE。

我们可以这样输入函数公式:

=(A2,”^([A-Z]+-d{3})-1$”,1)

正则表达式含义解析:

([A-Z]+-d{3}):定位产品编号前缀。例如DEPT-001,作为分组1。

其中[A-Z]+:代表连续的大写字母范围。

其中d{3}:代表3位长度的任意数字。

-1:人为强制要求后缀与前缀分组1完全相同。

设置第3参数为1,即判断模式,返回逻辑值TRUE或FALSE。

php正则w_正则文法_正则w

职场实例4:

比如我们想要提取混合内容的订单信息。

例如A2单元格中的订单信息:JY-2(数量:25) ,我们想要分别提取到订单号和数量。

我们可以这样输入函数公式:

=(A2,”([A-Z]+-d{8}-d+).数量:(d+).”,2,”1″)

正则表达式释义:

([A-Z]+-d{4}-d+):定位订单号作为分组1,例如“JY-2”

(d+):定位数量作为分组2,例如“25”

用的替换模式,将第一参数替换为”1″,即替换为分组1后,就相当于提取到了订单号。

正则文法_php正则w_正则w

若提取数量,只需要变动第4参数:

=(A2,”([A-Z]+-d{8}-d+).数量:(d+).”,2,”2″)

用的替换模式,将第一参数替换为”2″,即替换为分组2后,就相当于提取到了数量。

php正则w_正则文法_正则w

其实重复学习Excel,刚开始是挺难的,但重复的次数多了总会成为习惯,先从坚持一星期开始,你会爱上那种脑子又累,又无限充实的感觉。回顾关键内容,善用图片表达,学会建立联系,拓展深度广度,浓缩关键概念,应用到行动中,善于归纳总结,尝试进行分享。

正则w_正则文法_php正则w

〖往期知识点精彩超链接点击阅读〗

〖更多实用内容请在号内历史文章搜索〗

加入IP合伙人(站长加盟) | 全面包装你的品牌,搭建一个全自动交付的网赚资源独立站 | 晴天实测8个月运营已稳定月入3W+
限时特惠:本站每日持续更新海量内部创业教程,一年会员只需98元,全站资源免费无限制下载点击查看会员权益

站长微信: qtw123cn

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注