首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

这个新的Excel提取函数,太厉害了!WPS也能用了!

今天我们继续来聊聊Excel的新函数——REGEXEXTRACT,它可以根据正则表达式来进行数据的提取,可以说是最强大的数据提取函数,没有之一,在WPS中叫做REGEXP函数,虽然叫法不一样,但是用法基本上都是一模一样的。

一、什么是正则表达式

正则表达式是一种文本模式描述的方法,包括普通字符(如字母a到z)和特殊字符(称为“元字符”)。通常使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。正则表达式通常被用于搜索、编辑或操作文本和数据。

简单来说就是:正则表达式可以通过一些特定的字符来描述出当前数据的规律,然后我们再通过这个规律来做数据提取与匹配

以下是一些常见的元字符,这个大家只需要做了解即可,不需要记得,毕竟都是AI时代了

二、REGEXEXTRACT

REGEXEXTRACT函数:根据正则表达式来进行数据的提取

语法:=REGEXEXTRACT (text、pattern、[return_mode]、[case_sensitivity])

参数1:需要提取的文本参数2:正则表达式参数3:匹配类型,一共有3个,下面会详细讲到参数4:是否需要区分大小写

以上就是REGEXEXTRACT函数的参数,随后我们来了解下的使用方法

三、常规用法

在这里\d表示整数后面再跟一个+号就表示匹配一个或多个数字字符,

公式:=REGEXEXTRACT(B3,"\d+",0)

将第三参数忽略或者设置为0,只会返回第一个匹配到的结果

公式:=REGEXEXTRACT(B3,"\d+",1)

将第三参数设置为1,则表示匹配所有满足条件的结果

公式:=REGEXEXTRACT(B3,"\d+",2)

将第三参数设置为2.则会返回错误值,这个是因为第三参数是用来获取匹配组的第一个结果的,当前的正则表达式并不是匹配组,所以就会返回错误值,这用到的并不多大家了解即可

四、提取小数

公式:=REGEXEXTRACT(B3,"\d+\.?\d+",1)

跟大家简单的讲解下这个正则表达式的含义

\d+表示匹配多个数字,\.?表示匹配1个小数点,\d+再次匹配多个数字,这样的话就能构建好小数的匹配规则

如果你想对数据进行求和,需要注意的是该函数是一个文本函数,结果都是文本格式的数字,需要将结果乘1转换为数字格式才能求和

公式:=SUM(REGEXEXTRACT(B3,"\d+\.?\d+",1)*1)

五、提取字母

公式:=REGEXEXTRACT(B3,"[a-z]+",1,0)

在这里如果第四参数为0怎表示区分大小写,第四参数为1怎表示不区分大小写。

这个参数的意义其实并不大,可以使用使用[A-Z]表示大写字母,[a-z]表示小写字母

六、提取汉字

公式:=REGEXEXTRACT(B3,"[一-龟]+",1)

方括号是一个字符集,一-龟就表示汉字的范围,在这里范围是根据Unicode 编码的顺序,一到龟基本涵盖的所有的函数,所以是可以使用[一-龟]来代指所有的汉字的

七、AI协助

正则表达式的规则与用法真的非常多,甚至有大佬还为此转换写了一本书,但是我们真的完全没有必要去学习,现在AI已经非常普及了,遇到不会的正则表达值,直接询问AI即可

比如现在我们想要提取下面这个话的金额,就可以直接询问AI,它的答疑也基本都是正确的。

早上5个人花了100元,今天中午2个人花了12.6元,晚上花了19.63元

以上就是今天分享的全部内容,这个函数在WPS中叫做REGEXP,升级到最新版已经可以使用了,大家可以动手练习下,真的很好玩~

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OXqKC7cdXjsXH81-P2c8X89w0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券