引用了Microsoft VBScript Regular Expressions 5.5 后就可以聲明正則相關(guān)對象了。主要有三個(gè)對象:RegExp、MatchCollection、Match。
1. RegExp 這是VB使用正則表達(dá)式匹配模式的主要對象了。其提供的屬性用于設(shè)置那些用來比較的傳遞給 RegExp 實(shí)例的字符串的模式。 其提供的方法以確定字符串是否與正則表達(dá)式的特定模式相匹配。
屬性:
Pattern:一個(gè)字符串,用來定義正則表達(dá)式。
IgnoreCase:一個(gè)布爾值屬性,指示是否必須對一個(gè)字符串中的所有可能的匹配進(jìn)行正則表達(dá)式測試。這是MS的解釋,有點(diǎn)費(fèi)解,實(shí)際使用中的實(shí)例是,如果True,則忽略英文字母大小的匹配,False對大小寫進(jìn)行匹配。
Global:設(shè)置一個(gè)布爾值或返回一個(gè)布爾值,該布爾值指示一個(gè)模式是必須匹配整個(gè)搜索字符串中的所有搜索項(xiàng)還是只匹配第一個(gè)搜索項(xiàng)。
MultiLine:這個(gè)MS沒有介紹。查了一下資料,設(shè)置一個(gè)布爾值或返回一個(gè)布爾值,是否在串的多行中搜索。如果允許匹配多行文本,則multiline為true,如果搜索必須在換行時(shí)停止,則為false 。
方法:
Execute:返回一個(gè) MatchCollection 對象,該對象包含每個(gè)成功匹配的 Match 對象。
Replace:MS沒有介紹,這是返回一個(gè)將匹配字符替換為指定字符的字符串。
Test:返回一個(gè)布爾值,該值指示正則表達(dá)式是否與字符串成功匹配。
2. MatchCollection 是集合對象,包含有關(guān)匹配字符串的信息,該對象包含每個(gè)成功匹配的 Match 對象。
屬性
Count:匹配對象的總數(shù)。
Item:匹配對象的索引。
3. Match 是成功匹配的對象。
屬性:
FirstIndex:匹配對象所匹配字符串的起始位置。
Length:匹配對象所匹配字符串的字符長度。
SubMatches:匹配對象所匹配結(jié)果的子項(xiàng)。
Value:匹配對象所匹配的值。
相關(guān)示例參照MS的網(wǎng)站:http://support.microsoft.com/kb/818802/zh-cn。MS上沒有介紹的幾個(gè)屬性和方法的使用,見下面的幾個(gè)簡單示例:1. RegExp的Test方法:
1. RegExp的Test方法:
Function bTest(ByVal s As String, ByVal p As String) As Boolean
2. RegExp的Replace方法:
Function StrReplace(s As String, p As String, r As String) As String
3. Match的SubMatches屬性:
Private Sub Command3_Click()