2012-09-06 302 views
5

我在VBA(WORD)中的正则表达式匹配只给出一个结果。vba正则表达式只返回第一个匹配

我创造了这个功能

Function RE6(strData As String) As String 

    Dim RE As Object, REMatches As Object 
    Set RE = CreateObject("vbscript.regexp") 
    With RE 
     .MultiLine = False 
     .Global = False 
     .IgnoreCase = True 
     .Pattern = "\[substep [a-zA-Z]\](.*?); {1}" 
    End With 

    Set REMatches = RE.Execute(strData) 

    RE6 = "" 


End Function 

这里的问题是,它只是给人的第一结果。例如我的字符串:

[step 1] title for substeps; [substep a] step a; [substep b] step b; [substep c] step c; 

我的结果是:

[子步骤一个步骤A;

只有1个匹配,而不是步骤b和c。

回答

相关问题