使用vba查找字符串中出现的“date”计数

时间:2016-02-16 06:36:09

标签: vba access-vba

我有一个多次包含日期的字符串。

例如

  

2016-01-23 AKS你能查一下2015-11-23 AKS你可以查一下吗.2015-10-06 RM我添加了评论2015-04-22 RM - 保存你的清单这里2014-12-21 SV看一下。

我需要计算日期的发生次数。 上面的例子计数是5

3 个答案:

答案 0 :(得分:2)

将字符串分配给变量。

string test="2016-01-23 AKS Could you please check 2015-11-23 AKS Could you please check .2015-10-06 RM I added the remarks 2015-04-22 RM - Save your list here2014-12-21 SV See word.";

然后使用正则表达式匹配日期。

图案:([\d]{4}[\-][\d]{2}[\-][\d]{2})

然后使用Dim regCount As New Regex(test, RegexOptions.IgnoreCase) 用于查找匹配日期的计数。

答案 1 :(得分:1)

Dim strArr() As String, i As Long
Dim Comment as String
Comment = "2016-01-23 AKS Could you please check 2015-11-23 AKS Could you please check .2015-10-06 RM I added the remarks 2015-04-22 RM - Save your list here2014-12-21 SV See word."
strArr = Split(Comment, "201")
getOccuranceCount = UBound(strArr)
MsgBox getOccuranceCount 

答案 2 :(得分:0)

@BENSINGH P:谁告诉你所载的日期都在2010年1月1日到2019年12月31日之间?

@NITHIN Vvn:RegEx解决方案更干净,但是谁告诉你字符串中的日期分隔符总是" - ",而不是" /"甚至"。"?他们是如何填补这些字符串的?

@Vivek ab: 为什么不审查你的数据库设计并定义一个只有3个字段的表(一个ID绑定到父记录,一个日期字段和一个文本字段,然后简单地计算,而不是构建字符串(这似乎是日志结果))带有Dcount语句的每个ID的记录?