首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >限制正则表达式接受某些格式

限制正则表达式接受某些格式
EN

Stack Overflow用户
提问于 2018-09-25 22:34:57
回答 1查看 29关注 0票数 0

现在,如果我有200011,那么正则表达式假设是有效的日期-这是2000年1月1日,但我想限制它的格式为YYYYMMDD,这样它将只接受20000101作为有效日期。我如何才能做到这一点?

我的代码:

代码语言:javascript
复制
^(?:(?:(?:(?:(?:[1-9]\d)(?:0[48]|[2468][048]|[13579][26])|(?:(?:[2468][048]|[13579][26])00))([-\/.]?)(?:0?2\1(?:29)))|(?:(?:[1-9]\d{3})([-\/.]?)(?:(?:(?:0?[13578]|1[02])\2(?:31))|(?:(?:0?[13-9]|1[0-2])\2(?:29|30))|(?:(?:0?[1-9])|(?:1[0-2]))\2(?:0?[1-9]|1\d|2[0-8])))))$
EN

回答 1

Stack Overflow用户

发布于 2018-09-25 22:38:14

您需要在所有0之后删除?

代码语言:javascript
复制
^(?:(?:(?:(?:(?:[1-9]\d)(?:0[48]|[2468][048]|[13579][26])|(?:(?:[2468][048]|[13579][26])00))([-\/.]?)(?:02\1(?:29)))|(?:(?:[1-9]\d{3})([-\/.]?)(?:(?:(?:0[13578]|1[02])\2(?:31))|(?:(?:0[13-9]|1[0-2])\2(?:29|30))|(?:(?:0[1-9])|(?:1[0-2]))\2(?:0[1-9]|1\d|2[0-8])))))$

请参阅regex demo

例如,最后一个0?[1-9]将匹配0一次或零次,然后是一个非零数字。当您删除?量词时,将需要0

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52500755

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档