我试图在处理它之前将文本字符串验证为日期,但是我试过的两个正则表达式都抛出了语法错误,我看不出原因.据我所知,两者都没有错.这些是字符串:
var datePattern1 = new RegExp( (0[1-9]|1[012])[-](0[1-9]|[12][0-9]|3[01])[-](19|20)\d\d );
和
var datePattern2 = new RegExp( [0-3][0-9]-(0|1)[0-9]-(19|20)[0-9]{2} );
感谢任何帮助.
您缺少表达式周围的引号:
var datePattern1 = new RegExp( "(0[1-9]|1[012])[-](0[1-9]|[12][0-9]|3[01])[-](19|20)\d\d" ); var datePattern2 = new RegExp( "[0-3][0-9]-(0|1)[0-9]-(19|20)[0-9]{2}" );
要么RegExp
像darin所提到的那样将字符串传递给构造函数,要么使用RegExp语法" / … /
":
var datePattern1 = /(0[1-9]|1[012])[-](0[1-9]|[12][0-9]|3[01])[-](19|20)\d\d/; var datePattern2 = /[0-3][0-9]-(0|1)[0-9]-(19|20)[0-9]{2}/;