第40集 正则表达式4
175、 ()
可以让括号内作为一个整体,取匹配结果的时候,括号中的表达式可以用 \数字引用,\后数字按照从左往右,从外向里的顺序。
Sub t29()
Dim regx As New RegExp
Dim sr
sr = “A3A3QA3A37BDFEA387A8”
With regx
.Global = True
.Pattern = “(A3){2}” '相当于A3A3,结果:Q7BDFEA387A8
Debug.Print .Replace(sr, “”)
End With
End Sub

    Sub t30()Dim regx As New RegExpDim srsr = "A3A3QA3A37BDFEA387A8"With regx.Global = True.Pattern = "((A3){2})Q\1" 'A3A3QA3A3,\1代表((A3){2}),即A3A3,结果:7BDFEA387A8Debug.Print .Replace(sr, "")End WithEnd SubSub t31()Dim regx As New RegExpDim srsr = "A3A3B4B4QB4B47BDFE87A8"With regx.Global = True.Pattern = "((A3){2})((B4){2})Q\4"  'A3A3B4B4QB4,\4代表(B4),如\3代表((B4){2}),结果:7BDFEA387A8Debug.Print .Replace(sr, "")End WithEnd Sub

176、 (?=字符)
用(?=字符)可以先进行预测查找,到一个匹配项后,将在匹配文本之前开始搜索下一个匹配项。 不会保存匹配项以备将来之用。
'例:截取某个字符之前的数据
Sub t343()
Dim regex As New RegExp
Dim sr, mat, m
sr = “100元8000元57元”
With regex
.Global = True
.Pattern = “\d+(?=元)” '查找任意多数字后的元,查找到后从元以前开始查找,查找和\d匹配的。
Set mat = .Execute(sr)
For Each m In mat
Debug.Print m
Next m
End With
End Sub
结果:
100
8000
57
.Pattern = “\d+(?=元).”
结果:
100元
8000元
57元
.Pattern = “\d+(?=元)\d” 没有匹配到的结果,因为元是一个字符,而\d是一个数字,不同类的将匹配不到。

'例:验证密码,条件是4-8位,必须包含一个数字
Sub t355()
Dim regex As New RegExp
Dim sr, mat, m
sr = “A8ayaa”
With regex
.Global = True
.Pattern = “^(?=.\d).{4,8}$"
Set mat = .Execute(sr)
For Each m In mat
Debug.Print m
Next m
End With
End Sub
177、 (?!字符)
用(?!字符)可以先进行负预测查找,到一个匹配项后,将在匹配文本之前开始搜索下一个匹配项。 不会保存匹配项以备将来之用。
Sub t356()
Dim regex As New RegExp
Dim sr, mat, m
sr = “建筑集团公司”
With regex
.Global = True
.Pattern = "^(?!中国).
” '结果:建筑集团公司
Set mat = .Execute(sr)
For Each m In mat
Debug.Print m
Next m
End With
End Sub
178、 ()与|
()与|一起使用可以表示or
Sub t344()
Dim regex As New RegExp
Dim sr, mat, m
sr = “100元800块7元”
With regex
.Global = True
.Pattern = “\d+(元|块)”
’ 相当于.Pattern = “\d+元|\d+块”
Set mat = .Execute(sr)
For Each m In mat
Debug.Print m
Next m
End With
End Sub
结果:
100元
800块
7元

VBA入门到进阶常用知识代码总结40相关推荐

  1. VBA入门到进阶常用知识代码总结47

    第47集 程序优化与提速 205. 减少对象的调用 调用对象是非常非常的耗费资源的,所以一定要尽可能的少调用对象.包括: 工作簿.工作表.单元格以及外引用对象. Sub 在循环中调用单元格() Dim ...

  2. VBA入门到进阶常用知识代码总结77

    第77集 API基础 367. API概述 API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或 ...

  3. VBA入门到进阶常用知识代码总结43

    第43集 日期与时间专辑 189. 返回当前日期.时间(指本机系统设置的日期和时间) Sub t1() Debug.Print Date '返回当前日期 Debug.Print Time '返回当前时 ...

  4. Vue3+TypeScript从入门到进阶(六)——TypeScript知识点——附沿途学习案例及项目实战代码

    文章目录 一.简介 二.Vue2和Vue3区别 三.Vue知识点学习 四.TypeScript知识点 一.JavaScript和TypeScript 二.TypeScript的安装和使用 1.Type ...

  5. Webpack从入门到进阶(二)---附沿路学习案例代码

    文章目录 Webpack从入门到进阶(一)---附沿路学习案例代码 一.Webpack简介 1.前端发展的几个阶段 2.前端三个框架的脚手架 3.Webpack是什么? 4.webpack和vite ...

  6. HBase入门至进阶以及开发等知识梳理

    HBase入门至进阶以及开发等知识梳理 HBase简介 hadoop简介 Hadoop是一个由Apache基金会所开发的分布式系统基础架构.用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分 ...

  7. Vue3+TypeScript从入门到进阶(八)——项目打包和自动化部署——附沿途学习案例及项目实战代码

    文章目录 一.简介 二.Vue2和Vue3区别 三.Vue知识点学习 四.TypeScript知识点 五.项目实战 六.项目打包和自动化部署 一. 项目部署和DevOps 1.1. 传统的开发模式 1 ...

  8. 100例Python代码带你从入门到进阶!

    以下所有代码全都至少运行一遍,确保可复现.易于理解.逐步完成入门到进阶的学习. 此教程经过我 反复打磨多遍 ,经常为此熬夜,真心不易,文章比较长,看完有用,帮我点个在看或分享支持. 教程包括 62 个 ...

  9. VBA编程中常用过程代码

    VBA编程常用过程代码方案,供大家写代码参考,陆续发表: VBA过程代码6:返回当前单元格的位移 Sub MyNZ() on error resume next ActiveCell.Offset(0 ...

最新文章

  1. Centos7常用命令
  2. 阿里巴巴招聘最全集合帖:宣讲会+岗位+30篇面试宝典来啦
  3. 从open系统调用的源码看文件的打开过程
  4. 【MFC系列-第7天】MFC类库封装原理
  5. 前端学习(1969)vue之电商管理系统电商系统之渲染动态参数和静态参数的表格
  6. 中兴myos和鸿蒙,继华为鸿蒙系统以后!中兴再次发布新系统MyOS:可媲美苹果
  7. 用concat批量生成MySQL查询语句
  8. html5 复制到剪贴板 兼容,js/jQuery实现复制到剪贴板功能,兼容所有浏览器
  9. 批量修改注册表之Bat脚本
  10. malloc函数和free函数的使用方法解析
  11. NTFS与FAT32区别
  12. 基于BoF算法的图像分类
  13. ESLint语法检查
  14. 到2020年,烟台重点林区视频监控率将达90%以上
  15. Cesium实时目标跟踪最新特效教程系列1—实时发亮直线跟踪移动目标
  16. Star CCM+ Interface踩坑——表面发射率
  17. 配色三部曲-创建自己的调色板
  18. Linux嵌入式数据库
  19. PROFINET的GSD文件描述
  20. 数据库领域顶会SIGMOD背后的故事,这篇文章全部告诉你~

热门文章

  1. Java源码阅读之String(4)
  2. Scrum master成长笔记 –Scrum master最需要的能力
  3. Ajax异步请求原理和过程
  4. python recv_python网络编程调用recv函数完整接收数据的三种方法
  5. 2023年01月 使用win11系统自带SSH,远程控制VMware中Liunx虚拟机系统
  6. python中hasattr,getattr,setattr的区别
  7. matlab 矩阵处理,matlab矩阵处理
  8. Hadoop集群分布式安装
  9. Windows下使用pip时出现TSL/SSL错误解决方案
  10. 平衡小车c语言程序,【全部开源】两轮平衡小车(原理图、PCB、程序源码、BOM等)...