yyyy/MM/dd hh:mm:ss 时间格式校验
时间: 2023-10-04 20:03:06 浏览: 159
可以使用正则表达式来校验时间格式,以下是一个可以匹配 yyyy/MM/dd hh:mm:ss 格式的正则表达式:
```
^\d{4}/(0?[1-9]|1[0-2])/(0?[1-9]|[12][0-9]|3[01]) (0?[0-9]|1[0-9]|2[0-3]):(0?[0-9]|[1-5][0-9]):(0?[0-9]|[1-5][0-9])$
```
解释一下:
- `^` 表示匹配字符串的开头
- `\d{4}` 表示匹配 4 个数字,即年份
- `/` 表示匹配斜杠字符
- `(0?[1-9]|1[0-2])` 表示匹配 01-12 的数字,可以省略前导 0
- `/` 表示匹配斜杠字符
- `(0?[1-9]|[12][0-9]|3[01])` 表示匹配 01-31 的数字,可以省略前导 0
- ` ` 表示匹配空格字符
- `(0?[0-9]|1[0-9]|2[0-3])` 表示匹配 00-23 的数字,可以省略前导 0
- `:` 表示匹配冒号字符
- `(0?[0-9]|[1-5][0-9])` 表示匹配 00-59 的数字,可以省略前导 0
- `:` 表示匹配冒号字符
- `(0?[0-9]|[1-5][0-9])` 表示匹配 00-59 的数字,可以省略前导 0
- `$` 表示匹配字符串的结尾
使用示例:
```python
import re
pattern = r"^\d{4}/(0?[1-9]|1[0-2])/(0?[1-9]|[12][0-9]|3[01]) (0?[0-9]|1[0-9]|2[0-3]):(0?[0-9]|[1-5][0-9]):(0?[0-9]|[1-5][0-9])$"
date_time_str = "2022/07/30 23:59:59"
if re.match(pattern, date_time_str):
print("时间格式正确")
else:
print("时间格式错误")
```
输出:
```
时间格式正确
```
阅读全文