ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > E问E答 > Excel VBA > 如何用VBA正则表达式匹配多个字符中的某一个?

如何用VBA正则表达式匹配多个字符中的某一个?

作者:绿色风 分类: 时间:2022-08-17 浏览:178
楼主
wise
Q:如何用VBA正则表达式匹配多个字符中的某一个?
A:ALT+F11→插入模块→在模块中输入以下代码:
  1. Sub 匹配多个字符中的某一个()
  2.   '定义变量
  3.   Dim str As String
  4.   Dim matcher As Object
  5.   Dim i As Long
  6.   '后期绑定调用正则表达式
  7.   Set reg = CreateObject("VBScript.regexp")
  8.   '搜索所有匹配的
  9.   reg.Global = True
  10.   '不区分大小写
  11.   reg.ignorecase = True
  12.   str = "saler1.xls saler2.xls saler5.xls na1.xls na2.xls rose1.xls rose2.xls sa2.xls"
  13.   '以[ns]开头:匹配字符n或s,.将匹配一个任意字符,\.将匹配.字符本身,xls将完全匹配字符串xls
  14.   reg.Pattern = "[ns]a.\.xls"
  15.   '使用Execute方法
  16.   Set matcher = reg.Execute(str)
  17.   '循环匹配对象的总数
  18.     For i = 0 To matcher.Count - 1
  19.       '返回对象的索引,即符合条件的数
  20.        Debug.Print matcher.Item(i)
  21.     Next i
  22. End Sub
2楼
bluexuemei
学习!

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap