试图改进日期验证的正则表达式

Cod*_*ess 0 regex validation datetime

我写了一个正则表达式,用于以MonthName dd,yyyy格式验证日期

以下代码适用于2天数字的日期:

^(January|February|March|April|May|June|July|August|September|October|November|December)\s+\d\d[,]\s+(19|20)\d\d
Run Code Online (Sandbox Code Playgroud)

对于每天一位数的日期(例如:2015年4月5日),我使用:

^(January|February|March|April|May|June|July|August|September|October|November|December)\s+\d[,]\s+(19|20)\d\d
Run Code Online (Sandbox Code Playgroud)

如何将我的正则表达式更改为两个选项的单个正则表达式?(2015年4月24日和2015年4月5日)

lan*_*nok 6

与代码一致的最简单方法:您只需说它应该是一位或两位数.我们可以在花括号内给出字符数.

\s+\d{1,2}[,]\s+(19|20)\d{2}
Run Code Online (Sandbox Code Playgroud)

或者在这个答案中更详细