根据以下规则生成正则表达式: 1、校验字符串长度为16位 2、校验字符串第12位是下划线 3、校验字符串最后一位是 1或者2 4、校验字符串中不包含中划线
时间: 2024-04-30 07:24:56 浏览: 9
生成的正则表达式如下:
```
^[^-]{11}_[^-]{4}[^-]*[12]$
```
解释一下每个部分的含义:
- `^`:匹配字符串的开始位置
- `[^-]{11}`:匹配长度为16位并且不包含中划线的前11位字符
- `_`:匹配下划线
- `[^-]{4}`:匹配下划线后的4位字符,同样不包含中划线
- `[^-]*`:匹配下划线之后的任意个非中划线的字符
- `[12]`:匹配最后一位字符是1或2
- `$`:匹配字符串的结束位置
相关问题
js正则表达式校验英文字符或数字下划线,第一位不能为下划线
您可以使用如下的正则表达式进行检验:
```javascript
/^[a-zA-Z0-9][a-zA-Z0-9_]*$/
```
解释一下这个正则表达式的含义:
- `^` 表示字符串的开头
- `[a-zA-Z0-9]` 表示英文字母或数字,即第一位必须为英文字母或数字
- `[a-zA-Z0-9_]*` 表示英文字母、数字或下划线,即后面的字符可以为英文字母、数字或下划线,可以出现 0 次或多次
- `$` 表示字符串的结尾
因此,这个正则表达式可以校验英文字符或数字下划线,第一位不能为下划线的字符串。
java校验账号特殊字符正则表达式
以下是一个可以用于校验账号特殊字符的 Java 正则表达式:
```java
String regex = "^[a-zA-Z0-9_]+$";
```
解释:
- `^` 匹配字符串的开头
- `[a-zA-Z0-9_]` 匹配大小写字母、数字和下划线
- `+` 匹配前面的字符一次或多次
- `$` 匹配字符串的结尾
这个正则表达式只允许账号中包含大小写字母、数字和下划线,不允许出现其他特殊字符。