蓝色棱镜字符串格式/验证

时间:2018-04-03 20:14:05

标签: blueprism

我有一个问题,我需要对一些数据进行异常处理,我将把它放入excel报告中。 DataItem"个人身份代码"可能无效;它必须始终为11个字符,其格式应为DDMMYYSNNNX, 其中DD =天,MM =月,YY =年,S ='A'或' - ',NNN =数字,X =字母或数字 示例:310199-111K,011206A2222

我想以某种方式检查这个/验证格式,然后才能从队列中处理它(所以我可以抛出一个Business Exception)。是否有一些聪明的方法来设置它?我在考虑将正则表达式与某些东西结合起来?

修改

这是我的流程页面与解决方案的相似之处: enter image description here

1 个答案:

答案 0 :(得分:1)

要验证这种输入,我会做两次验证:

a)正则表达式检查它是否与预期格式匹配

示例正则表达式可以是这个:

\d{6}[A-]\d{3}[\d,a-z,A-Z]

或更严格的一个:

^\d{6}[A-]\d{3}[\d,a-z,A-Z]$

B)检查字符串开头的日期是否有效(例如,2月30日或25日的第95日)。

我尝试将计算阶段MakeDate()函数与Left()和Mid()函数结合使用。如果日期不正确,那么BluePrism将抛出错误“无法将3个提供的参数转换为日期”