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 '循环遍历Matches集合
RetStr = RetStr & "Match found at position "
RetStr = RetStr & Match.FirstIndex & ". Match Value is '"
RetStr = RetStr & Match.Value & "'." & vbCRLF
Next RegExpTest = RetStrEnd FunctionMsgBox(RegExpTest("is.", "IS1 is2 IS3 is4"))
RegExp对象在VBScript中提供正则表达式支持功能,该对象有3个属性和3个方法。
1)Execute方法
该方法用于对指定正则表达式进行匹配检测,其值返回一个Matches集合,其中包含了所有检测到匹配的Match对象。如果没有检测到任何匹配则返回一个空的Matches集合。
语法格式:regexp.Execute(string)
其中,regexp为RegExp对象的变量名称;string为要进行匹配检测的有效字符串表达式。
2)Replace方法
调用Replace方法时,如果在指定字符串中找到与指定正则表达式相匹配的字符(串),则用指定的其他字符(串)进行替换。该方法的返回值为替换以后的字符串表达式。
语法格式:regexp.Replace(string1,string2)
其中,regexp为RegExp对象的变量名称;string1为要被检测并替换的字符串表达式;string2为用于替换的字符串表达式。
sub window_onLoad()
dim str,regexp
dim msgstr
str="How are you" msgstr="替换前:"&str&"<br />"
'//创建RegExp对象
set regexp=new RegExp
'//设置正则表达式 regexp.Pattern="o."
'//设置是否替换所有匹配
regexp.Global=True
document.write msgstr
'//替换操作 msgstr=regexp.Replace(str,"test")
msgstr="替换后:"&msgstr
document.write msgstr
end sub
3)Test方法
该方法的作用是判断指定的字符串中是否有与指定的正则表达式相匹配的内容。如果有,则返回Ture;否则返回False。同Replace方法类似,调用该法时,正则表达式是由Pattern属性指定的。二者不同在于,Global属性的设置对该方法没有影响。
sub window_onLoad()
dim str,regexp
dim blvar
str="This is a test" '//创建RegExp对象
set regexp=new RegExp
'//设置正则表达式
regexp.Pattern=".s" '//调用Test方法
blvar=regexp.Test(str)
if blvar then
document.write "在"&str&"中找到了与"®exp.pattern&"相匹配的内容" else
document.write "没有找到匹配内容"
end if
end sub
VBS基础篇 - RegExp 对象的更多相关文章
- VBS基础篇 - wscript 对象
一.wscript对象 描述:提供对 Windows 脚本宿主对象模型根对象的访问.详述:WScript 对象是 Windows 脚本宿主对象模型层次结构的根对象.它可在任何脚本文件中使用,不需要特定 ...
- VBS基础篇 - Err对象
Err对象是一个具有全局范围的内部对象,含有关于错误的所有信息.On Error Resume next 忽略运行时产生的所有错误On Error Goto 0 取消忽略错误措施主要方法有:Clear ...
- VBS基础篇 - FileSystemObject对象
文件系统是所有操作系统最重要的部分之一,脚本经常会需要对文件及文件夹进行访问和管理,在Vbs中对桌面和文件系统进行访问的顶级对象是FileSystemObject FSO包含的常见对象有: ...
- VBS基础篇 - Dictionary对象
Dictionary是存储数据键和项目对的对象,其主要属性有Count.Item.Key,主要方法有Add.Exists.Items.Keys.Remove.RemoveAll. '建立字典 Dim ...
- VBS基础篇 - 对象(1) - Class对象
VBS基础篇 - 对象(1) - Class对象 相信对JAVA有一定了解的朋友一定对类这个名词不陌生,但是大家可能没有想过在VBS中使用Class类吧,其实Class类在自动化测试中是相当常用的 ...
- VBS基础篇 - 对象(3) - FileSystemObject对象
VBS基础篇 - 对象(3) - FileSystemObject对象 文件系统是所有操作系统最重要的部分之一,脚本经常会需要对文件及文件夹进行访问和管理,在Vbs中对桌面和文件系统进行访问的顶级 ...
- VBS基础篇 - 对象(5) - File对象
VBS基础篇 - 对象(5) - File对象 描述:提供对文件所有属性的访问,从FSO对象的GetFile方法获得. 使用File对象 要用File对象模型来编程必须先用FileS ...
- VBS基础篇 - 对象(7) - TextStream对象
VBS基础篇 - 对象(7) - TextStream对象 TextStream对象是用于访问文本文件的对象,它是FileSystemObject一个独立的附属对象,但在使用TextStream对 ...
- VBS基础篇 - 对象(6) - Folder对象
VBS基础篇 - 对象(6) - Folder对象 描述:提供对文件所有属性的访问,从FSO对象的GetFile方法获得 使用Folder对象 要用Folder对象模型来编程必须先用FSO对象的G ...
随机推荐
- github 学习笔记【一】
这几天在学习github ,其实学了主要用来管理自己的项目!因为要在家里和公司两头做! 所以就开始学习使用!目前熟练几个命令,其他的一边用一遍学吧!想一举成功应该是不太可能的! 反复记忆才能更好,据说 ...
- MVC小例子
[约定胜于配置] 1. 右键Mode数据层添加新建项,用linq连接数据库 (不要在控制层上直接操控linq,要在数据层新建一个类,来对数据库进行操作) 2. 右键Mode数据层添加类,来完成对数据库 ...
- 【学习笔记】【C语言】字符串数组
1.使用场合 * 一维字符数组中存放一个字符串,比如一个名字char name[20] = "mj" * 如果要存储多个字符串,比如一个班所有学生的名字,则需要二维字符数组,cha ...
- php面向对象的基础:创建OOP的方法
方法的创建 class Computer{ public function _run(){ return '我是类的一个公共方法'; } } $computer = new Computer(); / ...
- (转) 线上环境部署MongoDB的官方建议
本文主要内容来自MongoDB官方文档http://docs.mongodb.org/manual/administration/production-notes/.并结合了实际工作情况进行分享. 1 ...
- Linux I/O模型
同步阻塞I/O 在此种方式下,用户进程在发起一个I/O操作以后,必须等待I/O操作的完成,只有当真正完成了I/O操作以后,用户进程才能运行.Java传统的I/O模型属于此种方式. 同步非阻塞I/O 在 ...
- C++中delete[]是如何知道数组大小的
先看一段代码: int main(void) { int *pI = new int; int *pArray = new int[10]; int size = *(pArray-1); delet ...
- LLVM language 参考手册(译)(6)
模块级内联汇编(Module-Level Inline Assembly) 模块包含“module-level inline assembly”块,这与GCC中的“file scope inline ...
- Linux系统环境变量及命令
Linux哪些我们常用,但是用的时候想不起来,这里做一个备忘录. Linux常用的变量: PATH 决定了shell将到哪些目录中寻找命令或程序 HOME 当前用户主目录 HISTSIZE 历史记录数 ...
- 设置datagridview中button按钮的背景颜色
问题:DataGridViewButtonColumn()在datagridview中创建按钮列,如何设置按钮的背景颜色(不是单元格的背景颜色). 回答:可以在dataGridView1_CellPa ...