Я пытаюсь использовать регулярное выражение VB6 с группами захвата для анализа и перестановки строки:
Dim innfilename As String
Dim outfilename As String
innfilename = "4.6.12.Jack&DianeWedding004.jpg"
outfilename = innfilename
Dim regexB As RegExp
Dim regexBMatchCol As MatchCollection
Dim regexBMatch As Match
Set regexB = New RegExp
regexB.IgnoreCase = True
regexB.Global = True
regexB.Pattern = "^(\d{1,2})\.(\d{1,2})\.(\d{2,4})\.(.*)$"
Set regexBMatchCol = regexB.Execute(innfilename)
If regexBMatchCol.Count > 0 Then
Set regexBMatch = regexBMatchCol(0)
mnth = regexBMatch.SubMatches(0)
dayy = regexBMatch.SubMatches(1)
year = regexBMatch.SubMatches(2)
remd = regexBMatch.SubMatches(3)
yearInt = Val(year)
mnthInt = Val(mnth)
dayyInt = Val(dayy)
If yearInt >= 70 And yearInt <= 99 Then
year = "19" & year
Else
year = "20" & year
End If
If mnthInt >= 1 And mnthInt <= 9 Then
mnth = "0" & mnth
End If
If dayyInt >= 1 And dayyInt <= 9 Then
dayy = "0" & dayy
End If
outfilename = year & "." & mnth & "." & dayy & "." & remd
End If
но мое регулярное выражение не работает, т. Е. RegexBMatchCol.Count оказывается равным нулю.
Кто-нибудь может определить мою ошибку?
ТИА
Все еще учусь, Стив