参考代码
Dim str As String = "DDS03H2-20X11-AH"
Dim mc = System.Text.RegularExpressions.Regex.Matches(str, "([A-Za-z]+)([0-9]+)([A-Za-z]+[0-9]*)-([0-9]+)([A-Za-z]+[0-9]+)-([A-Za-z]+)")
If mc.count > 0 Then
'msgbox(mc(0).Groups.count)
msgbox(mc(0).groups(0).value)
msgbox(mc(0).groups(1).value)
msgbox(mc(0).groups(2).value)
msgbox(mc(0).groups(3).value)
msgbox(mc(0).groups(4).value)
msgbox(mc(0).groups(5).value)
msgbox(mc(0).groups(6).value)
End If