在 VBA 中使用正则表达式

Sub  Macro1()
'
'
 Macro1 Macro
'
 Macro recorded 2007-6-19 by JK Zhang
'
'
     MsgBox  (TestRegExp( " is. " " IS1 is2 IS3 is4 " ))
End Sub

Function  TestRegExp(myPattern  As   String , myString  As   String )
   
' Create objects.
    Dim  objRegExp  As   Object
   
Dim  objMatch  As   Object
   
Dim  colMatches  As   Object
   
Dim  RetStr  As   String
   
   
'  Create a regular expression object.
    Set  objRegExp  =   CreateObject ( " vbscript.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
 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值