当前位置:  开发笔记 > 编程语言 > 正文

正则表达式 - 有什么我做错了吗?

如何解决《正则表达式-有什么我做错了吗?》经验,为你挑选了1个好方法。

这是javascript,但是几乎完全相同的正则表达式在PHP中也失败了,所以我认为它不是特定于语言的

var r = new RegExp(
    "^(:19|20)?[0-9][0-9]"            // optional 19/20 start followed by 2 numbers
    + "-"                             // a hyphen
    + "(:0?[1-9]|1[0-2])"             // optional 0 followed by 1-9, or 10, 11, 12
    + "-"                             // a hyphen
    + "(:3[01]|[12][0-9]|0?[1-9])$"   // you get the idea.
);
r.test("2008-07-01");                // == false

我究竟错过了什么?



1> Gareth..:

我认为你的非捕获块应该是例如(?:19|20)而不是(:19|20)

推荐阅读
我我檬檬我我186
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有