0

我在 UI 上有一个日期输入控件。它会在输入数字时自动完成日期。

目前使用:

\d{1,2}(\.|\/|-)\d{1,2}

在http://regexpal.com/上进行测试以查看它是否正常工作。

基本上是 1 位或 2 位数字,后跟 ./- 之一,以及 1 位或 2 位数字。例如 01/9、1/2、1/1,将匹配

我想要做什么(但不能!):

如果第二组数字(月份部分)是 0 或 1,则需要另一个数字

如果第二组数字是 2-9,则匹配

基本上就是这样,谢谢

布赖恩

4

1 回答 1

2

正则表达式中的数字范围有点烦人,应该在验证格式时在单独的步骤中完成。但这里是正则表达式:

\d{1,2}[/.-](0?[2-9]|1[0-2]|01|1[/.-])

这应该符合所有要求(包括评论中的要求)。可能的月份:

2, 3, ..., 9
01, 02, 03, ..., 09
10, 11, 12
1/, 1., 1-
于 2012-11-08T10:54:49.647 回答