温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何在EXCEL中使用正则表达式

发布时间:2021-03-17 14:29:41 来源:亿速云 阅读:944 作者:Leah 栏目:开发技术

如何在EXCEL中使用正则表达式?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

一、需求

比如,我要拆分下面的字符串:

如何在EXCEL中使用正则表达式

显然这样的需求,用正则表达式再合适不过了。

二、解决步骤

下面我们使用的这个方法,定义出的函数将长期有效:

1、新建一个EXCEL文件,我这里命名为RE,随后按ALT+F11打开宏编辑器,选中任意一个sheet,右键,选择插入模块:

如何在EXCEL中使用正则表达式

2、双击模块1,编辑如下VBA自定义函数代码:

Function RE(OriText As String, ReRule As String, ReplaceYesOrNo As Boolean)
'''
'OriText:待匹配的字符串
'ReRule:正则表达式
'ReplaceYesOrNo:是否采用替换方法,1表示替换,0表示不替换,默认为不替换
'''

'创建一个正则表达式实例对象
Set ReObject = CreateObject("vbscript.regexp")

With ReObject

 '是否区分大小写,一般需求是不用区分大小写,因此这里为True
 .IgnoreCase = True

 '是否匹配所有,一般需求也都是匹配所有,这里也就默认是True,如果为False表示只匹配第一次出现的
 .Global = True

 '匹配时所用到的正则表达式
 .Pattern = ReRule

 If ReplaceYesOrNo Then

  '如果使用替换方法,则将正则表达式匹配到的项替换为空
  RE = .Replace(OriText, "")

 Else
  '否则,返回可迭代对象的第一项
  RE = .Execute(OriText)(0)

 End If

End With

End Function

3、另存为加载宏格式:

如何在EXCEL中使用正则表达式

4、点击下方的加载项:

如何在EXCEL中使用正则表达式

5、点击浏览:

如何在EXCEL中使用正则表达式

6、选择我们刚保存的加载宏格式文件,结果如下图:

如何在EXCEL中使用正则表达式

好了,到这里我们的正则函数就创建好了,随后每次打开EXCEL都可以直接使用定义的RE函数,按照需求来敲出合适的正则表达式。

三、结果呈现

如何在EXCEL中使用正则表达式

看完上述内容,你们掌握如何在EXCEL中使用正则表达式的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI