我创建了一个用于检查日期格式的正则表达式(01-01-0000到31-12-9999)。 我尝试了一个示例正则表达式,它可以工作,所以我的正则表达式有问题,但是当我在调试器(regexr)中尝试它时它运行得很好。
我错过了什么?
([0]{1}[1-9]{1}|[1-2]{1}[0-9]{1}|[3]{1}[0-1]{1})(\-)([0]{1}[1-9]{1}|[1]{1}[0-2]{1})(\-)\d{4}
编辑后的新正则表达式:
(0[1-9]|[12][0-9]|3[01])-(0[1-9]|1[0-2])-\d{4}
我使用html输入类型文本,并将正则表达式放在pattern =" my pattern"。
提前致谢(:
编辑:根据Casimir et Hippolyte的评论修正了正则表达式,现在它可以正常工作。
答案 0 :(得分:0)
您的正则表达式看起来没问题,至少它会捕获您的两个样本日期(在regex101.com上测试)。
您可以稍微简化一下:
[...]
(例如,将[0]
更改为0
)。(-)
更改为-
)。请尝试以下正则表达式:
(0[1-9]|[12][0-9]|3[01])-(0[1-9]|1[0-2])-(\d{4})
然而,目前尚不清楚,你是否真的需要捕捉群体。