通过js正则匹配一个日期,格式为YYYY-MM-DD,例如2023-01-01。
时间: 2024-01-04 22:02:47 浏览: 34
可以使用以下正则表达式来匹配一个日期,格式为YYYY-MM-DD:
```javascript
const regex = /^\d{4}-\d{2}-\d{2}$/;
```
该正则表达式由以下几部分组成:
- `^` 表示开头
- `\d{4}` 表示匹配 4 个数字,即年份
- `-` 表示匹配一个横杠
- `\d{2}` 表示匹配 2 个数字,即月份
- `-` 表示匹配一个横杠
- `\d{2}` 表示匹配 2 个数字,即日期
- `$` 表示结尾
使用该正则表达式可以对一个字符串进行匹配,例如:
```javascript
const str = '2023-01-01';
const regex = /^\d{4}-\d{2}-\d{2}$/;
console.log(regex.test(str)); // true
```
如果字符串符合 YYYY-MM-DD 的格式,则返回 true,否则返回 false。
相关问题
js正则只获取日期yyyy-mm-dd
好的,您可以使用以下正则表达式来匹配日期格式为 "yyyy-mm-dd" 的字符串:
```
/\d{4}-\d{2}-\d{2}/
```
这个正则表达式可以匹配形如 "2021-10-22" 的日期字符串,其中 "\d" 表示匹配数字,"{4}" 表示匹配四次,"{2}" 表示匹配两次。
使用方法如下:
```javascript
const str = "今天是2021-10-22,明天是2021-10-23";
const reg = /\d{4}-\d{2}-\d{2}/g;
const result = str.match(reg);
console.log(result); // ["2021-10-22", "2021-10-23"]
```
这里使用了 String 对象的 match 方法来查找字符串中符合正则表达式的部分,并返回一个数组。如果字符串中有多个匹配的日期字符串,可以使用 "g" 修饰符来全局匹配。
使用 js 写一个 yyyy-mm-dd hh:mm 正则验证
可以使用以下正则表达式进行验证:
```
/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}$/
```
其中,`\d` 表示数字,`{n}` 表示匹配 n 个前面的模式。所以 `\d{4}` 匹配4个数字,`\d{2}` 匹配2个数字。`-` 和 `:` 字符需要自己匹配。
使用例子:
```js
const pattern = /^\d{4}-\d{2}-\d{2} \d{2}:\d{2}$/;
const dateString = '2022-12-31 23:59';
if (pattern.test(dateString)) {
console.log('合法日期时间格式');
} else {
console.log('不合法日期时间格式');
}
```