基本上我一直在阅读this。我想要找到的是如何在一个组中提取模式的特定部分。
例如,假设我想要使用以下模式查找电子邮件,并且我想要使用以下模式专门检索电子邮件的域名:([\w.-]+)@([\w.-]+.\w+)
。
我知道我可以在模式的第一组上使用前瞻,然后在' @'之前检索电子邮件的一部分。我需要重新编写相同的代码,这不是非常干的。
答案 0 :(得分:1)
很抱歉该教程是法语:http://cafeine.developpez.com/access/tutoriel/regexp/
从这个链接测试我已经过去的这段代码:
Sub testRegEx()
Dim reg As VBScript_RegExp_55.regexp
Dim Match As VBScript_RegExp_55.Match
Dim Matches As VBScript_RegExp_55.MatchCollection
' instanciation
Set reg = New VBScript_RegExp_55.regexp
reg.Pattern = "([\w.-]+)@([\w.-]+.\w+)"
Set Matches = reg.Execute("email@test.com")
For Each Match In Matches
Debug.Print "source >>", Match.Value
For i = 0 To Match.SubMatches.Count - 1
Debug.Print "[$" & i + 1 & "]", Match.SubMatches(i)
Next i
Next Match
End Sub