java 验证yyyy mm dd_java正则表达式 验证时间(yyyy-MM-dd)合法性
时间: 2023-06-30 18:21:58 浏览: 79
可以使用如下的正则表达式来验证时间的合法性:
```java
String regex = "^(\\d{4})-(\\d{2})-(\\d{2})$";
```
其中:
- `^`:表示字符串的开始位置。
- `\\d{4}`:表示四位数字,即年份。
- `\\d{2}`:表示两位数字,即月份和日期。
- `-`:表示连接符。
- `$`:表示字符串的结束位置。
完整的 Java 代码如下:
```java
String regex = "^(\\d{4})-(\\d{2})-(\\d{2})$";
String dateStr = "2022-01-01";
if (dateStr.matches(regex)) {
System.out.println("时间格式正确!");
} else {
System.out.println("时间格式错误!");
}
```
输出结果为:
```
时间格式正确!
```
相关问题
java只能输入时间格式yyyy-MM-dd的正则表达式
可以使用以下正则表达式来匹配时间格式为yyyy-MM-dd:
```java
String regex = "^\\d{4}-\\d{2}-\\d{2}$";
```
解释一下这个正则表达式:
- `^` 表示字符串的开始位置。
- `\d` 表示一个数字。
- `{4}` 表示前面的数字重复出现 4 次。
- `-` 表示匹配一个短横线。
- `$` 表示字符串的结束位置。
因此,这个正则表达式可以匹配形如 "2021-01-01" 的时间字符串。
yyyy-mm-dd的正则表达式
你可以使用以下正则表达式来匹配日期格式为yyyy-mm-dd:
```regex
^\d{4}-\d{2}-\d{2}$
```
这个正则表达式的含义是以四位数字开头,紧接着一个连字符(-),然后是两位数字,再紧接着一个连字符,最后是两位数字。'^'和'$'分别表示字符串的开头和结尾,保证整个字符串都符合这个格式。
请注意,这个正则表达式仅匹配格式正确的日期,但并不能验证日期的逻辑正确性,例如闰年、月份的天数等。