首页 > 解决方案 > 我需要正则表达式来验证模式

问题描述

我需要正则表达式来验证模式,模式可以是以下列表的组合,

规则

可以允许最少 16 个和最多 20 个字符。

我们应该只能在大写字母中添加固定字符(例如,' yyyyAAddmmss' 这里AA是固定值)

我们应该转义一个固定字符(例如\R,然后R不被替换)

HMR应允许字符转义,如 ' \H' 或 ' \M' 或 ' \R' 因为这些字符在模式中。

模式应包含至少 4 个随机数字(例如yyRMMRddRHHRmmRss

它应该允许数字0-9

它不应该允许特殊字符。

这种有效模式的例子

yyyyMMddHHmmssff
yyyyMMddHHmmssffR
AByyyyMMddHHmmssRRRR
AByyyy\RMMddHHRRmmRR
\Myy\HMMdd\RRHHmmss99RR

标签: regexbarcode

解决方案


模式应包含至少 4 个随机数字(例如yyRMMRddRHHRmmRss

您要求的东西可能不会产生唯一的匹配。

例如,20110221318763521可以通过多种方式匹配模式:

20110221318323521
yyRMMRddRHHRmmRss => 20-10-21 18:23:21
yyMMRRddRHHRmmRss => 20-11-21 18:23:21
yyRRMMddRHHRmmRss => 20-02-21 18:23:21
yyRMMRddRHHmmRssR => 20-10-21 18:32:52
...


推荐阅读