Ich arbeite an dem Ersetzen schlecht formatierter Datumszeichenfolgen (und anderer Elemente) mithilfe von regulären VBA-Ausdrücken in Excel.VBA regulärer Ausdruck, ersetzt Gruppen
I Datum Strings zu ersetzen suchen, die die richtige YYYY-MMM-DD-Format haben, aber die dash Separatoren fehlen - Dinge wie:
2014,APRIL,04 or
2014.Apr,04 or
2014/Apr-04
ich sie möchte wie eine von formatiert werden diese:
2014-Apr-04
2014-April-04
(dh hält das Jahr, Monat, Tag Elemente, wie sie zur Verfügung gestellt wurden, sondern einfach das ersetzen der Trennzeichen mit einem Bindestrich anstelle einem Komma, Punkt oder anderen seltsamen Zeichen)
Der Code, den ich derzeit habe, ist:
Dim RE As Object
Set RE = CreateObject("vbscript.regexp")
With RE
.Global = False ' Several occurrence to be found
.IgnoreCase = True
.Pattern = "(((19|20)[0-9]{2})[, /.]([a-zA-Z]+)[, /.](0[1-9]|[12][0-9]|3[01])[, /.])"
End With
Dim ReplacePattern As String
ReplacePattern = "$1-$2-$3"
Dim match As Boolean
match = RE.Test(LogEntryTxt)
LogEntryTxt = RE.Replace(LogEntryTxt, ReplacePattern)
aber es scheint der Ersatz nicht richtig gemacht wird. Kann jemand helfen? Ich habe versucht, benannte Gruppen, nummerierte Gruppen usw. zu erforschen, aber nichts, was ich versucht habe, hat es geschafft.
Vielen Dank !!!! Ich kann nicht glauben, dass ich so eine dumme Sache übersehen habe !!! :) Danke, wirklich. – user3477276