提供一段正则表达式校验"yyyy-mm"
时间: 2023-07-06 20:26:51 浏览: 175
可以使用如下正则表达式来校验"yyyy-mm"格式的字符串:
```regex
^\d{4}-(0[1-9]|1[0-2])$
```
其中:
- `^` 表示匹配字符串的开头。
- `\d{4}` 表示匹配4个数字,即年份。
- `-` 表示匹配一个横杠。
- `(0[1-9]|1[0-2])` 表示匹配月份,其中 `(0[1-9]|1[0-2])` 表示一个分组,其中 `|` 表示或,即匹配 01-09 或 10-12 两种情况。
- `$` 表示匹配字符串的结尾。
因此,该正则表达式可以匹配格式为"yyyy-mm"的字符串,例如"2021-01"、"2021-12"等。
相关问题
提供一段正则表达式日期为yyyy-mm-dd
可以使用以下正则表达式匹配日期为yyyy-mm-dd的格式:
```java
^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$
```
解释:
- `^` 表示正则表达式的开始
- `\d{4}` 匹配四位数字的年份
- `-` 匹配日期中的横杠字符
- `(0[1-9]|1[0-2])` 匹配月份,支持 01 到 12 月
- `-` 匹配日期中的横杠字符
- `(0[1-9]|[12]\d|3[01])` 匹配日期,支持 01 到 31 日
- `$` 表示正则表达式的结束
完整的 Java 代码示例:
```java
String regex = "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])$";
String date = "2021-06-15";
if (date.matches(regex)) {
System.out.println("日期格式正确");
} else {
System.out.println("日期格式不正确");
}
```
正则表达式 日期 yyyy-mm-dd
可以使用以下正则表达式匹配日期格式为yyyy-mm-dd的字符串:
```
^\d{4}-(0?[1-9]|1[0-2])-(0?[1-9]|[1-2]\d|3[01])$
```
解释:
- `^` 匹配字符串的开头
- `\d{4}` 匹配4个数字,即年份
- `-` 匹配一个横杠
- `(0?[1-9]|1[0-2])` 匹配月份,可以是1到12,可以有前导0
- `(0?[1-9])` 匹配1到9,可以有前导0
- `|` 或
- `1[0-2]` 匹配10到12
- `-` 匹配一个横杠
- `(0?[1-9]|[1-2]\d|3[01])` 匹配日期,可以是1到31,可以有前导0
- `(0?[1-9])` 匹配1到9,可以有前导0
- `|` 或
- `[1-2]\d` 匹配10到29或者30
- `|` 或
- `3[01]` 匹配31
- `$` 匹配字符串的结尾
注意,这个正则表达式只匹配日期格式为yyyy-mm-dd的字符串,而不会检查日期是否合法(比如2月份是否有29天)。
阅读全文