regex - 正则表达式匹配日期中的有效日期

标签 regex perl validation date

我需要帮助想出一个正则表达式来确保用户输入一个有效的日期
该字符串的格式为 mm/dd/yyyy
这是我到目前为止所提出的。

/\[1-9]|0[1-9]|1[0-2]\/\d{1,2}\/19|20\d\d/

我已经验证了用户不能输入大于 12 天并且年份必须以“19”或“20”开头的正则表达式。我遇到的问题是找出验证这一天的一些逻辑。一天不应该超过 31。

最佳答案

0-31 的正则表达式:

(0[1-9]|[12]\d|3[01])

或者,如果您不想要前导零的日子(例如 05):
([1-9]|[12]\d|3[01])

关于regex - 正则表达式匹配日期中的有效日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6076979/

相关文章:

java - 在 Java 中检查字符串是否是 ISO 语言的 ISO 国家/地区的更简洁方法

java - 仅当两个序列相同时才匹配正则表达式

c# - ASP.NET MVC 默认绑定(bind)器 : too long ints, 空验证错误消息

regex - 用反斜杠替换路径中的所有正斜杠(因此,不是所有正斜杠)

perl - 为什么 TextMate 在运行 Perl 脚本时总是提示 'Can' t find string terminator '"'' ?

Perl 和 Selenium::远程::驱动程序

python - 优雅的结构化文本文件解析

c# - MVC 应用程序中缺少表单验证

java - 如何编写 java 正则表达式来匹配 3 位数字以外的任何内容?

regex - 使用 Grep 在匹配之前获取捕获组和行