我试着写一个能捕捉一年和每周的正则表达式。为了ASP.net ViewModel。
下面是我现在使用的表达式。
[RegularExpression(@"[\d]{4}-[0-5]\d", ErrorMessage = "Work Week Requires 4 digit year - 2 Week. e.g. 2019-09")] 这做了我想要做的大部分事情,但是有一些是它没有处理的。
以下是我试图捕捉/拒绝的东西
2001-01 good
2001-10 good
2001-01 good
2001-10 good
2010-1 good
6502-9 good
4657-09 good
2003-01 good
2056-53 good
2056-54 bad
2068-60 bad
5416-00 bad
2015-0 bad
10000-15 would be nice to catch but I'm Ok with this code breaking 8000 years from now 我用这个问题创建了一个regex101,https://regex101.com/r/iL5rpY/2
问题
我不知道如何根据查值来评估查值。
问题
如何创建捕获整数1到53的所有文本版本的正则表达式?
发布于 2018-05-17 18:41:56
你可以用
^0*\d{4,5}-0*(?:[1-9]|[1-4]\d|5[0-3])$见regex演示。
详细信息
^ -字符串的开始0* -零或多个0s\d{4,5} -4或5位数- -a连字符0* - zer或更多0(?:[1-9]|[1-4]\d|5[0-3]) -从1到9的数字,或从1到4的数字,然后任何数字或5后面跟着0、1、2或3$ -字符串的末端。https://stackoverflow.com/questions/50398099
复制相似问题