.hd-box .hd-fr

WPS 新函数 REGEXP 功能介绍

2024-05-11 23:21秋叶Excel(卫星酱)58评

本文作者:卫星酱

本文编辑:竺兰

锵锵~ 大家好哇!我是没事儿就整点函数分享的卫星酱~

今天卫某要介绍一个超级好用的WPS 新函数——REGEXP

大家会从文本中提取数值吗?

像这样的内容:

虽然用的公式比较长:

=RIGHT(LEFT(C3,LEN(C3)-1)LEN(LEFT(C3,LEN(C3)-1))*2-LENB(LEFT(C3,LEN(C3)-1)))

但本质上是先去除单位:

再提取:

比较容易理解;

何况还有【Ctrl+E】这个大杀器(Excel 2013、WPS 12.7 及两者以上版本均可使用),直接帮我们搞定:

但要是碰上这种数据 ↓↓↓

打工人很可能只会上演一场笑容消失术……

但只要请出咱们今天的正主 ——WPS 新函数 REGEXP,问题就迎刃而解了!

1、函数介绍

REGEXP,是 WPS Office 中的一个文本处理函数(WPS 16894 版本中才有,目前在内测阶段)。

它还有许多的子函数,比如:

REGEXPEXTRACT:提取匹配正则表达式的子字符串。

REGEXPMATCH:判断文本是否匹配正则表达式。

REGEXPREPLACE:替换匹配正则表达式的文本。

如果有同学对此感兴趣,可以在评论区中留言,说不定下一次就介绍它们啦~

这里我们还是回归正题 ——

REGEXP 函数允许用户利用正则表达式来匹配、提取、替换或处理文本数据

比如,「\d+」就是一个正则表达式,它表示一个或多个数字字符的序列。

如果用「\d+」去匹配文本,它会匹配文本中所有连续的数字。

这就是为什么咱们今天的数据万分需要它:

2、案例实操

只需要输入一个短到不可思议的公式:

 =REGEXP(B3,"\d+")

就能搞定文本内提取多项数值的复杂问题!

3、Excel 做法

可惜的是,Excel 中并没有这个好用的函数

但要实现类似的功能,也不是没有办法~

按【Alt + F11】打开 VBA 编辑器,右击 VBAProject,选择【插入】- 【模块】。

添加以下代码:

Function RegExpMatch(pattern As String, text As String) As String       Dim regEx As Object              Set regEx = CreateObject("VBScript.RegExp")        regEx.Global = True               regEx.MultiLine = True               regEx.IgnoreCase = False        regEx.Pattern = pattern               Dim matches As Object               Set matches = regEx.Execute(text)        Dim results As String               results = ""        If Not matches Is Nothing And matches.Count > 0 Then                    Dim i As Integer                    For i = 0 To matches.Count - 1                          If matches.Item(i).Value <> "" Then                                     results = results & matches.Item(i).Value & ", "                                        End If                                  Next i                                  ' 移除最后一个多余的逗号和空格                                  If Right(results, 2) = ", " Then                                        results = Left(results, Len(results) - 2)                                       End If                               End If                     RegExpMatch = results        End Function

然后我们就能使用自定义函数RegExpMatch

4、写在最后

好了,今天给大家带来的是 WPS 新函数 REGEXP,提取文本中所有连续数值的用法,还给出了 Excel 中的替代选项哦~

当然,如果你紧跟潮流,善用 AI,那就更简单了~

只需把图片丢给 AI,并命令「提取其中所有数值,并以纯数字形式返回给我」,直接出结果!

不过,如果数据比较敏感,担心隐私泄露问题,还是用函数自己处理比较好~

本文来自微信公众号:秋叶 Excel (ID:excel100),作者:卫星酱

广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,IT之家所有文章均包含本声明。

下载IT之家APP,分享赚金币换豪礼
相关文章
大家都在买广告
热门评论
查看更多评论