我的正则表达式在VBA(WORD)中只能匹配到一个结果。
我创建了这个函数:
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] 步骤a;
只有1个匹配项,不包括步骤b和c。