匹配字符串中的第二个日期

时间:2017-06-03 01:32:34

标签: regex excel vba email outlook

您能否就VBA脚本提供建议,以便在电子邮件中与下面的日期格式进行匹配。

  

开始时间:23.06.2017 00:00:00(CEST) 22.06.2017 22:00(GMT)

注意:还有另一个日期。我只需要匹配粗体就可以将其导出到Excel中。

Set SD = CreateObject("vbscript.regexp")

With SD.Pattern = "((Start:*\s*\s*[\d-\.]*\s*\s*\s*[\d-\.]*))"
    .Global = False
    .IgnoreCase = False
End With

If SD.test(sText) Then
    Set D1 = SD.Execute(sText)
    For Each D In D1
        vText1 = Trim(D.SubMatches(1))
    Next
End If
xlSheet.Range("C" & rCount) = vText1

1 个答案:

答案 0 :(得分:0)

使用此正则表达式:[0-9]{2}\.[0-9]{2}\.[0-9]{4}\s[0-9]{2}\:[0-9]{2}(?=\s\(GMT\))

这是一个工作示例。 RegexStorm.net

第一部分是数字集合,最后一部分表示必须后跟空格和(GMT)。

这是一个指向VB.Net示例的链接,用于获取日期/时间字符串。您需要将其转换为VBA。

.Net Fiddle