如何在VB中使用正则表达式

1. 启动 Microsoft Visual Basic 6.0。

2. 在“文件”菜单上,单击“新建项目”。

3. 在“新建项目”对话框中,单击“Standard Exe”,然后单击“确定”。

默认情况下将创建 Form1。

4. 在“项目”菜单上单击“引用”。

5. 双击“Microsoft VBScript Regular Expressions 5.5”,然后单击“确定”。

6. 在工具箱中,双击“命令按钮”。

默认情况下,“Command1”将添加到窗体中。

7. 双击“Command1”以打开代码窗口。

8. 将下面的代码粘贴到“Command1_Click”事件处理程序:MsgBox(TestRegExp(“is.”, “IS1 is2 IS3 is4″))

注意 这个示例中将对照“IS1 is2 IS3 is4”字符串检查 is. 模式。您可以将句点这一特殊字符(.)用作通配符,这样,搜索模式就能够多匹配并多显示一个字符。如果www.x-force.cn您在搜索模式中添加两个句点,您会看到两个其他字符。如果您不使用任何句点,您只会看到搜索模式。

9. 将以下函数添加到“Command1_click”事件处理程序后:

[codes=vb]Function TestRegExp(myPattern As String, myString As String)

”Create objects.

Dim objRegExp As RegExp

Dim objMatch As Match

Dim colMatches As MatchCollection

Dim RetStr As String

” Create a regular expression object.

Set objRegExp = New RegExp

”Set the pattern by using the Pattern property.

objRegExp.Pattern = myPattern

” Set Case Insensitivity.

objRegExp.IgnoreCase = True

”Set global applicability.

objRegExp.Global = True

”Test whether the String can be compared.

If (objRegExp.Test(myString) = True) Then

”Get the matches.

Set colMatches = objRegExp.Execute(myString) ” Execute search.

For Each objMatch In colMatches ” Iterate Matches collection.

RetStr = RetStr & “Match found at position “

RetStr = RetStr & objMatch.FirstIndex & “. Match Value is ””

RetStr = RetStr & objMatch.Value & “”.” & vbCrLf

Next

Else

RetStr = “String Matching Failed”

End If

TestRegExp = RetStr

End Function[/codes]

10. 在“运行”菜单上,单击“启动”来运行该应用程序。

11. 单击“Command1”。

此时将出现一个消息框,该消息显示 IS1 is2 IS3 is4 字符串中的所有 is 匹配项。

posted @ 2012-05-08 09:25  老豆  阅读(4361)  评论(0编辑  收藏  举报