写一个正则表达式:校验最长14个英文或7个汉字, 不能纯数字
时间: 2024-04-13 18:30:44 浏览: 15
可以使用以下正则表达式进行校验:
```regex
^(?![0-9]+$)([\u4e00-\u9fa5]{1,7}|[a-zA-Z]{1,14})$
```
解释一下正则表达式的含义:
- `^` 表示字符串的开始
- `(?!...)` 是一个负向前瞻断言,表示后面不能匹配括号中的正则表达式
- `[0-9]+` 表示匹配一次或多次数字
- `[\u4e00-\u9fa5]{1,7}` 表示匹配1到7个汉字
- `[a-zA-Z]{1,14}` 表示匹配1到14个英文字母
- `|` 是或的意思,表示匹配前面或后面的表达式
- `$` 表示字符串的结束
综上所述,这个正则表达式可以校验字符串是否满足最长14个英文或7个汉字,并且不能是纯数字。