Javascript正则表达式/^(19 | 20)([0-9]{2})-(0-9]{2}{0[0-9]{1})-(0-9]{2}{0[0-9]{1})$/g未找到日期作为输入值

Javascript正则表达式/^(19 | 20)([0-9]{2})-(0-9]{2}{0[0-9]{1})-(0-9]{2}{0[0-9]{1})$/g未找到日期作为输入值,javascript,regex,Javascript,Regex,谢谢。 我创造了一个 /^(19|20)([0-9]{2})-([0-9]{2}|0[0-9]{1})-([0-9]{2}|0[0-9]{1})$/g 模式,但在浏览器中不起作用。 我做了测试。正在工作,但在浏览器js中不是中,您应该能够编写如下所示的正则表达式 (19|20)\d{2}-\d{2}-\d{2} 请参阅此JS代码片段: var日期='2019-04-03'; var regex=/(19 | 20)\d{2}-\d{2}-\d{2}/g; var结果=日期匹配(正则表达式);

谢谢。 我创造了一个

/^(19|20)([0-9]{2})-([0-9]{2}|0[0-9]{1})-([0-9]{2}|0[0-9]{1})$/g
模式,但在浏览器中不起作用。
我做了测试。正在工作,但在浏览器js中不是

中,您应该能够编写如下所示的正则表达式

(19|20)\d{2}-\d{2}-\d{2}
请参阅此JS代码片段:
var日期='2019-04-03';
var regex=/(19 | 20)\d{2}-\d{2}-\d{2}/g;
var结果=日期匹配(正则表达式);

console.log(结果[0])下面的正则表达式应该执行预期的检查

\((19|20)\d{2}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01]))\

这就是工作。谢谢

var日期='2019-04-03';
var regex=/(19 | 20)\d{2}-\d{2}-\d{2}/g;
var结果=日期匹配(正则表达式);

console.log(结果[0])Thaks但我需要1900到20992019-04-03 |/^(19 | 20)\d{2}-\d{2}-\d{2}$/g | false 1是提供输入的日期,第二个是regex 3result@MDReal你能分享你用来获得结果的完整代码吗?在Javascript中测试这一点对我来说很有效。@MDReal添加了snippet.FYI 2019-14-33不是一个有效的日期。你说它不起作用是什么意思?你犯了什么错误?不要设置为正确我能理解否决票。但2018-02-31也不是一个有效日期,您的正则表达式仍将输出该日期。如果OP想要一个也进行日期验证的正则表达式,那么它将相当困难!必须考虑闰年等因素。我很感激取消否决票。当然2月被排除在外,因为这对regex来说太多了,这并不意味着什么都没有。但是,删除了downvote,这里不是回复其他地方评论的地方:)