我正在尝试验证来自excel工作表的日期,格式应该是dd/mm/yyyy我尝试了正则表达式模式0-9{2}/0-9{2}/0-9{4},但这不适用于单个数字的日期,我们因为我们不能在excel工作表的开始添加0,所以此模式不起作用。(这是蓝棱镜工具,它具有正则表达式匹配的操作]
发布于 2018-05-29 03:54:33
要构建所需的弹性,您必须接受dd和mm的1位或2位数字
[0-9]{1,2}/[0-9]{1,2}/[0-9]{4}发布于 2018-07-18 18:34:38
既然您提到您正在使用BluePrism,那么您确定您真的需要正则表达式来验证日期吗?因为BP具有直接在Calc stage中调用内置功能-签出以下示例(您可以在顶部表达式栏中看到所选Calc stage的表达式)。
用于验证日期的函数是IsDate([Some date as string]),结果被保存到标志数据项中。

检查后,您可以在决策块中使用该Flag data-item,如果日期不是实际日期,则执行您认为合适的任何操作。
注意:当然,如果您在Code阶段使用列表/数据表,而不是在process布局中迭代集合,那么您需要一些其他的东西,但这可能仍然是有帮助的。
在代码阶段,我可能会简单地使用DateTime.Parse(String)方法,该方法能够自动将字符串形式的日期转换为DateTime对象实例;例如:
' DateTime.Parse throws an Exception if parsing failed.
Dim valid As Boolean = False
Try
Dim d = DateTime.Parse(First_Date)
valid = True
Catch e As Exception
valid = False
End Try有关使用DateTime.Parse解析日期的更多信息,请访问MSDN:https://msdn.microsoft.com/en-us/library/1k1skd40(v=vs.110).aspx
这里还有一篇关于解析日期的很好的文章:
发布于 2018-11-02 17:36:23
在蓝棱镜中你可以使用
FormatDate(Now(), FormatOfDate)为了比较两个日期,首先转换(“FormatDate ")为相同的格式,然后再进行比较。
对于“FormatDate”选项,您可以参考Blue prism的帮助并搜索dateadd -->选择计算和决策
https://stackoverflow.com/questions/50569962
复制相似问题