XLOOKUP再添新功能,正则表达式匹配

XLOOKUP再添新功能,正则表达式匹配

编程文章jaq1232025-09-01 4:17:209A+A-

Excel升级到最高版本,XLOOKUP的第五参数有个“正则表达式匹配”。

正则表达式是计算语言中用来描述一个字符串的特定方式,XLOOKUP启用该模式时将会匹配满足正则表达式所描述的数据。

最简单的应用就是可以取代通配符匹配,因为通配符匹配实质上也是结合通配符来描述一个字符串。

比如只记得姓名叫李什么张,中间这个字不知道,就可以用通配符来匹配,记得把第五参数设置为“2-通配符匹配”:

=XLOOKUP("李*张",A:A,A:B,,2)

"李*张"就描述了一个以李字开头张字结尾的字符串。

第五参数设置为“3-正则表达式匹配”,得益于正则表达式的灵活性,可以设计多种描述方式,以下公式都能查找到李德张的数据。

=XLOOKUP("李.张",A:A,A:B,,3)
=XLOOKUP("李\w张",A:A,A:B,,3)
=XLOOKUP("^李|张#34;,A:A,A:B,,3)
=XLOOKUP("(?>李).(?=张)",A:A,A:B,,3)
=XLOOKUP("李*张",A:A,A:B,,3)

如果只记得姓名中有个李字和张字,顺序也不确定,用通配符就很难解决,而简单的正则表达式就能描述“包含李字和张字的文本,无论顺序如何”。

=XLOOKUP("[张李]",A:A,A:B,,3)

还记有个四字姓名,但里面一个字都想不起来了,用正则表达式来查找4个字符的文本。

=XLOOKUP("\w{4}",A:A,A:B,,3)

除了名字,好像还有一笔上千元的数据,于是用正则表达式查找4位数的数字。

=XLOOKUP("\d{4}",B:B,A:B,,3)

那么问题来了,正则表达式中这些形形色色的符号又是什么意思呢?

这就是需要深入学习的正则表达式规则了,比如\d表示数字,\d{4}表示4位的数字。正则表达式从专业的计算机编程工具下放到公式后,网络上也涌现出很多正则元字符规则的资料,大家学习起来吧。

点击这里复制本文地址 以上内容由jaq123整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!

苍茫编程网 © All Rights Reserved.  蜀ICP备2024111239号-21