当前位置: 首页 > news >正文

【Excel 支持正则的方法】解决VBA引入正则的方法和步骤

VBA本身不支持直接使用正则,需要引用Microsoft VBScript Regular Expressions库

方法 1:前期绑定(手动引用库)

  1. 打开 VBA 编辑器(按 Alt+F11)。
  2. 点击菜单栏的 工具 → 引用。
  3. 在弹出的窗口中勾选 Microsoft VBScript Regular Expressions 5.5,点击确定。

之后即可在代码中使用正则表达式:

Sub RegexExample()Dim regex As New RegExpDim str As StringDim matches As MatchCollectionstr = "Hello 123 World 456"With regex.Global = True    ' 全局匹配.Pattern = "\d+"  ' 匹配数字End WithIf regex.Test(str) ThenSet matches = regex.Execute(str)For Each match In matchesMsgBox "找到匹配: " & match.ValueNextEnd If
End Sub

方法 2:后期绑定(无需引用库)

如果你不想手动引用库,可以用 CreateObject 动态创建对象:

Sub RegexExample()Dim regex As ObjectDim str As StringDim matches As ObjectSet regex = CreateObject("VBScript.RegExp")str = "Hello 123 World 456"With regex.Global = True.Pattern = "\d+"End WithIf regex.Test(str) ThenSet matches = regex.Execute(str)For Each match In matchesMsgBox "找到匹配: " & match.ValueNextEnd If
End Sub

关键属性说明

  1. .Global:是否全局匹配(True 匹配所有,False 仅匹配第一个)。
  2. .Pattern:设置正则表达式规则(如 \d 匹配数字)。
  3. .IgnoreCase:是否忽略大小写(True 或 False)。
  4. .Execute():执行匹配,返回匹配结果的集合。

相关文章:

  • Lesson 22 A glass envelope
  • 展示了一个三轴(X, Y, Z)坐标系!
  • 基于大模型的短暂性脑缺血发作预测与干预全流程系统技术方案大纲
  • 【C++】封装红黑树实现 mymap 和 myset
  • 记录将网站从http升级https
  • Linux(7)——进程(概念篇)
  • 万亿参数背后的算力密码:大模型训练的分布式架构与自动化运维全解析
  • 【RichTextEditor】 【分析2】RichTextEditor设置文字内容背景色
  • 毕业论文格式(Word)
  • python 自动生成不同行高的word
  • 攻防世界——Web题 unseping 反序列化绕过
  • 计算机视觉与深度学习 | 基于 YOLOv8 + BeautyGAN + CodeFormer + Face Parsing 实现简单的人脸美颜
  • Spring Security探索与应用
  • 如何进行CAN一致性测试
  • 从稳定到卓越:服务器部署后的四大核心运维策略
  • 传奇各种怪物一览/图像/爆率/产出/刷新地/刷新时间/刷怪时间
  • LeetCode 2942.查找包含给定字符的单词:使用库函数完成
  • vs2022 Qt Visual Studio Tools插件设置
  • 人工智能100问☞第31问:如何评估一个AI模型的性能?
  • IPC进程间通信详解
  • dw网站的站点建设/常用的seo查询工具
  • 做洁净的网站/佛山网站建设十年乐云seo
  • 陇南网站设计/seo长尾快速排名
  • 可以做h5的网站/推广方案万能模板
  • 重庆公共资源交易中心网/seo工具下载
  • 菏泽郓城住房和城乡建设局网站/百度导航怎么下载