一尘不染

JavaScript日期正则表达式DD / MM / YYYY

javascript

我知道那里有很多正则表达式线程,因为我需要一种无法在任何地方找到的特定模式

此正则表达式以YYYY-MM-DD格式验证

/^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/

我需要将模式设置为DD / MM / YYYY(第一天,因为它是西班牙语,因此只能使用“ /”,“-”)

我搜索了几个正则表达式库,我认为这个应该可以工作…但是由于我对正则表达式不熟悉,所以我不确定它是否可以像这样验证

(0[1-9]|[12][0-9]|3[01])[ \.-](0[1-9]|1[012])[ \.-](19|20|)\d\d

我也不知道ho如何转义斜线,我尝试“查看”字符串中的逻辑,但这就像为我尝试“查看” Matrix代码一样。我将正则表达式字符串放在选项.js中

[...]  },
"date": {
                    "regex": (0[1-9]|[12][0-9]|3[01])[ \.-](0[1-9]|1[012])[ \.-](19|20|)\d\d,
                    "alertText": "Alert text AAAA-MM-DD"
                },
"other type..."[...]

那么,如果正则表达式还可以,我该如何转义呢?如果不是,正确的正则表达式是什么,我该如何转义?:P

非常感谢


阅读 521

收藏
2020-04-25

共1个答案

一尘不染

您可以使用验证YYYY / MM / DD的正则表达式并将其翻转以获取DD / MM / YYYY所需的内容:

/^(0?[1-9]|[12][0-9]|3[01])[\/\-](0?[1-9]|1[012])[\/\-]\d{4}$/

顺便说一句-此正则表达式可验证DD / MM / YYYY或DD-MM-YYYY

PS这将允许日期,例如31/02/4899

2020-04-25