点菜还是下厨?正则表达式在不同应用场景的差异

临商珑胜
临商珑胜 Lv.1 新人创作者

Lv.1 新人创作者

刚上班,单位主管发给我一张EXCEL表格,里面统计了当前主营的水果名称。工作表中“水果名称”这一列数据录入极不规范,上级要求按“序号”、“水果中文名称”、“英文名称”、“原产地”等字段进行分列。表格如图:

WPS 表格内置了“REGEXP”函数,允许用户直接在单元格中使用正则表达式来完成复杂的文本提取、格式校验和字符替换。一个函数就能替代LEFT、MID、FIND、SUBSTITUTE等多个函数的组合,极大地提升了数据清洗的效率。凭借“REGEXP”函数的高效功能和灵活性,我顺利完成了数据清洗任务。

🥇“序号”列提取,编制函数公式

=REGEXP(A2,"\d+",0)

🥈“水果中文名称”列提取,编制函数公式

=REGEXP(A2,"[一-龟]+",0)

🥉“水果中文名称”列提取,由于有的水果英文名称之中有空格,需要用“TEXTJOIN”进行连接一下。编制函数公式

=TEXTJOIN(" ",,REGEXP(A2,"[a-zA-Z]+",0))

最终成果如下:

我刚拿起手机,想“摸鱼”刷个视频轻松一下,旁边的同事小白走了过来。他问我:“老兄,我也刚学习正则表达式,这个‘REGEXP’函数与WPS QUERY编辑器里使用正则表达式一样吗?”

💡我回答:“不一样,‘REGEXP’函数运用在WPS表格单元格公式中,天生支持正则表达式,通过参数不同对一个单元格的字符串实现“提取”、“判断”、“替换”等功能,结果直接落在WPS单元格里。WPS QUERY 编辑器提供的是一种步骤式数据清洗环境,处理的是“一张表/一个查询”,不能直接支持正则表达式,要通过 M 语言的 ‘Text’ 系列函数或自定义函数才能间接实现‘REGEXP’函数同样功能,改完点“刷新”才出结果,正则表达式写法并不完全相同。”

我说完,决定使用WPS QUERY完成同样的工作。

操作步骤:

一、单击编辑区任意区域,在功能区点击“获取数据”,选择“从表格/区域获取(T)”,启动WPS QUERY编辑器。

二、在WPS QUERY编辑器中,新增“自定义“列

三、在弹出的对话框中,修改列名为“序号”。编制提取“序号”数据的公式,使用M语言的“TEXT”函数。编写公式:

=Text.Select([水果名称], {"0".."9"})

操作完成:

四、新增“自定义列”,修改列名为“水果中文名称”。编制提取“水果中文名称”数据的公式,使用M语言的“TEXT”函数。编写公式:

=Text.Select([水果名称], {"一".."龟"})

操作完成:

五、新增“自定义列”,修改列名为“英文名称”。编制提取“英文名称”数据的公式,使用M语言的“TEXT”函数。由于有些水果的英文名称有空格,正则表达式编写公式时必须加上空格。编写公式:

=Text.Select([水果名称], {"a".."z","A".."Z"," "})

操作完成:

六、数据列位置调整。将“水果名称”列删除,“原产地”列移到最后一列。

选择输出数据,默认输出到当前工作表。

操作完成:

我对小白说:“同样是应用正则表达式干一样的事,打比方我们去饭馆吃饭,‘REGEXP’函数是偶尔去一次,人不多,坐下就点菜,菜单上有什么随便点,吃完就走人;使用WPS QUERY编辑器则好像你领了一大帮人,到菜市场买完了食材,亲自写菜谱,到后厨操刀烹制,力求众人吃的好满意。今天买的东西用不完,以后还常来。

🔍不同场景差异:

动作

动嘴点单拿筷子就吃(REGEXP)

动刀备菜亲自下厨(QUERY 编辑器)

入口在哪

单元格公式栏

数据选项卡 → 查询编辑器

怎么写规则

引号里写正则,=REGEXP(...)

M 语言函数写步骤,正则要自建函数

多久出结果

回车即出,速度快

搭好流水线,关闭加载才出,改完刷新

改需求

改公式里那串正则公式写法

改M语言操作步骤或自定义函数语句,重刷

适合谁

饿了马上吃(临时清洗当前表)

备一周的饭(月度报表/多源合并)

频率

偶尔

多次,重复

小白说:“你一说去吃饭,感觉更好理解了!”

我对他说:“净想着吃,WPS社区有位叫张俊的大神说得好,‘要想下班早,表格必须用的好!’,小伙,你要努力哟!”

小白激动地说“对对对,我要学好表格函数,好早点下班去跟女朋友约会。”然后走了。

旁边工位上的一位大姐转过头笑着对我说:“珑胜,尽忽悠小青年。我看你心里真正想的是:‘珑胜要想下班早,小白表格必须好’”

所有人都笑了。

哈哈!😁😁😁😁😁😁

临商珑胜WPS知识库
@孙胜龙
山东省
浏览 192
2
8
分享
8 +1
6
2 +1
全部评论 6
 
赵二
赵二 Lv.3 优质创作者WPS产品体验官

Lv.3 优质创作者

点赞收藏学习!
举报
2
2
临商珑胜
临商珑胜Lv.1 新人创作者

Lv.1 新人创作者

大佬都去建议,早点开通M语言编辑器!
·
举报
1
0
 
熠林
熠林 Lv.1 新人创作者

Lv.1 新人创作者

点赞学习
   浙江省
举报
0
0
 
HC.旋
HC.旋 WPS资深用户Lv.3 优质创作者WPS寻令官

Lv.3 优质创作者

点赞学习
   福建省
举报
0
0
 
亂雲飛渡
点赞学习
   广东省
举报
0
0