VBS教程:对象-正则表达式(RegExp)对象
正则表达式(RegExp)对象
提供简单的正则表达式支持功能。
说明
下面的代码说明了RegExp对象的用法:
Function RegExpTest(patrn, strng) Dim regEx, Match, Matches '
建立变量。Set regEx = New RegExp
'
建立正则表达式。regEx.Pattern = patrn '
设置模式。regEx.IgnoreCase = True '
设置是否区分字符大小写。regEx.Global = True '
设置全局可用性。Set Matches = regEx.Execute(strng) '
执行搜索。For Each Match in Matches '
遍历匹配集合。RetStr = RetStr & "Match found at position "
RetStr = RetStr & Match.FirstIndex & ". Match Value is '"
RetStr = RetStr & Match.Value & "'." & vbCRLF
Next
RegExpTest = RetStr
End Function
MsgBox(RegExpTest("is.", "IS1 is2 IS3 is4"))
相关推荐
-
VBS教程:对象-正则表达式(RegExp)对象
正则表达式(RegExp)对象提供简单的正则表达式支持功能. 说明下面的代码说明了RegExp对象的用法: Function RegExpTest(patrn, strng) Dim regEx, Match, Matches ' 建立变量. Set regEx = New RegExp ' 建立正则表达式. regEx.Pattern = patrn ' 设置模式. regEx.IgnoreCase = True ' 设置是否区分字符大
-
VBS教程:正则表达式简介 -后向引用
后向引用正则表达式一个最重要的特性就是将匹配成功的模式的某部分进行存储供以后使用这一能力.请回想一下,对一个正则表达式模式或部分模式两边添加圆括号将导致这部分表达式存储到一个临时缓冲区中.可以使用非捕获元字符 '?:', '?=', or '?!' 来忽略对这部分正则表达式的保存. 所捕获的每个子匹配都按照在正则表达式模式中从左至右所遇到的内容存储.存储子匹配的缓冲区编号从 1 开始,连续编号直至最大 99 个子表达式.每个缓冲区都可以使用 '\n' 访问,其中 n 为一个标识特定缓冲区的一位或
-
VBS教程:正则表达式简介 -定位符
定位符到现在为止,所看到的示例都只考虑查找任何地方出现的章节标题.出现的任何一个字符串 'Chapter' 后跟一个空格和一个数字可能是一个真正的章节标题,也可能是对其他章节的交叉引用.由于真正的章节标题总是出现在一行的开始,因此需要设计一个方法只查找标题而不查找交叉引用. 定位符提供了这个功能.定位符可以将一个正则表达式固定在一行的开始或结束.也可以创建只在单词内或只在单词的开始或结尾处出现的正则表达式.下表包含了正则表达式及其含义的列表: 字符描述^匹配输入字符串的开始位置.如果设置了 Re
-
VBS教程:正则表达式简介 -选择与编组
选择与编组选择允许使用 '|' 字符来在两个或多个候选项中进行选择.通过扩展章节标题的正则表达式,可以将其扩充为不仅仅适用于章节标题的表达式.不过,这可没有想象的那么直接.在使用选择时,将匹配'|' 字符每边最可能的表达式.你可能认为下面的 Visual Basic Scripting Edition 和 VBScript 表达式将匹配位于一行的开始和结束位置且后跟一个或两个数字的 'Chapter' 或 'Section': /^Chapter|Section [1-9][0-9]{0,1}$
-
VBS教程:正则表达式简介 -建立正则表达式
建立正则表达式构造正则表达式的方法和创建数学表达式的方法一样.也就是用多种元字符与操作符将小的表达式结合在一起来创建更大的表达式. 可以通过在一对分隔符之间放入表达式模式的各种组件来构造一个正则表达式.对 Visual Basic Scripting Edition 而言,分隔符为一对正斜杠 (/) 字符.例如: /expression/对 VBScript 而言,则采用一对引号 ("") 来确定正则表达式的边界.例如: "expression"在上面所示的两个示例
-
VBS教程:正则表达式简介 -正则表达式语法
正则表达式语法一个正则表达式就是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式.该模式描述在查找文字主体时待匹配的一个或多个字符串.正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配. 这里有一些可能会遇到的正则表达式示例: Visual Basic Scripting EditionVBScript匹配/^\[ \t]*$/"^\[ \t]*$"匹配一个空白行./\d{2}-\d{5}/"\d{2}-\d{5}"验证一个ID
-
VBS教程:正则表达式简介 -特殊字符
特殊字符有不少元字符在试图对其进行匹配时需要进行特殊的处理.要匹配这些特殊字符,必须首先将这些字符转义,也就是在前面使用一个反斜杠 (\).下表给出了这些特殊字符及其含义: 特殊字符说明$匹配输入字符串的结尾位置.如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 '\n' 或 '\r'.要匹配 $ 字符本身,请使用 \$.( )标记一个子表达式的开始和结束位置.子表达式可以获取供以后使用.要匹配这些字符,请使用 \( 和 \).*匹配前面的子表达式零次或多次.要匹配 *
-
VBS教程:正则表达式简介
这些页包含的信息其目的是提供一个关于正则表达式的通用介绍. 尽管试图让每个主题的内容都比较独立,但这些主题所包含的大部分信息都依赖于对前面所介绍的特性或概念的理解.因此,建议您顺序地仔细阅读这些主题,以便最全面地了解这些材料. "正则表达式简介"包括下述各个主题: 正则表达式 早期起源 使用正则表达式 正则表达式语法 建立正则表达式 优先权顺序 普通字符 特殊字符 非打印字符 字符匹配 限定符 定位符 选择与编组 后向引用
-
VBS教程:正则表达式简介 -正则表达式
正则表达式如果原来没有使用过正则表达式,那么可能对这个术语和概念会不太熟悉.不过,它们并不是您想象的那么新奇. 请回想一下在硬盘上是如何查找文件的.您肯定会使用 ? 和 * 字符来帮助查找您正寻找的文件.? 字符匹配文件名中的单个字符,而 * 则匹配一个或多个字符.一个如 'data?.dat' 的模式可以找到下述文件: data1.dat data2.dat datax.dat dataN.dat 如果使用 * 字符代替 ? 字符,则将扩大找到的文件数量.'data*.dat' 可以匹配下述所
-
VBS教程:正则表达式简介 -字符匹配
字符匹配句点 (.) 匹配一个字符串中任何单个的打印或非打印字符,除了换行符 (\n) 之外.下面的 Visual Basic Scripting Edition 正则表达式可以匹配 'aac'.'abc'.'acc'.'adc'如此等等,同样也可以匹配 'a1c'.'a2c'.a-c'以及 a#c': /a.c/等价的 VBScript 正则表达式为: "a.c"如果试图匹配一个包含文件名的字符串,其中句点 (.) 是输入字符串的一部分,则可以在正则表达式中的句点前面加上一个反斜杠
随机推荐
- 学习JVM之java内存区域与异常
- python 实现堆排序算法代码
- IE8对JS通过属性和数组遍历解析不一样的地方探讨
- 老生常谈js动态添加事件--- 事件委托
- Python利用Beautiful Soup模块修改内容方法示例
- Struts html:checkbox框初始默认是选中的解决方法
- WebSocket+node.js创建即时通信的Web聊天服务器
- C# TrieTree介绍及实现方法
- jquery 合并内容相同的单元格(示例代码)
- 纯真IP数据库格式图文详解
- Java基于Socket实现HTTP下载客户端
- Android 中SP与DP的区别实例详解
- smarty+adodb+部分自定义类的php开发模式
- java中Iterator和ListIterator实例详解
- Springboot访问html页面的教程详解
- Java源码解析ArrayList及ConcurrentModificationException
- iOS将相册中图片上传至服务器的方法
- php和vue配合使用技巧和方法
- Python3 requests文件下载 期间显示文件信息和下载进度代码实例
- android 监听SD卡文件变化的实现代码