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

正则表达式如何直接在EXCEL中使用 (https://zhuanlan.zhihu.com/p/358630486)
解决步骤
下面我们使用的这个方法,定义出的函数将长期有效:

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

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

1 Function RE(OriText As String, ReRule As String, ReplaceYesOrNo As Boolean)
 2 '''
 3 'OriText:待匹配的字符串
 4 'ReRule:正则表达式
 5 'ReplaceYesOrNo:是否采用替换方法,1表示替换,0表示不替换,默认为不替换
 6 '''
 7 
 8 '创建一个正则表达式实例对象
 9 Set ReObject = CreateObject("vbscript.regexp")
10 
11 With ReObject
12 
13     '是否区分大小写,一般需求是不用区分大小写,因此这里为True
14     .IgnoreCase = True
15     
16     '是否匹配所有,一般需求也都是匹配所有,这里也就默认是True,如果为False表示只匹配第一次出现的
17     .Global = True
18     
19     '匹配时所用到的正则表达式
20     .Pattern = ReRule
21     
22     If ReplaceYesOrNo Then
23         
24         '如果使用替换方法,则将正则表达式匹配到的项替换为空
25         RE = .Replace(OriText, "")
26         
27     Else
28         '否则,返回可迭代对象的第一项
29         RE = .Execute(OriText)(0)
30 
31     End If
32     
33 End With
34 
35 End Function
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容