kebab-case正则校验包含数字,数字不能单独存在
时间: 2024-03-27 17:35:06 浏览: 113
kebab-case:将字符串转换为kebab-case,即用破折号分隔的形式
可以的,以下是一个匹配 kebab-case 格式且不包含单独数字的正则表达式:
```
^(?!.*\d(?!\w))(?!.*\d-$)[a-z\d]+(-[a-z\d]+)*$
```
解释如下:
- `^`:匹配字符串的开始位置。
- `(?!.*\d(?!\w))`:不匹配包含单独数字的字符串。`(?!...)`为负向零宽断言,`.*`匹配任意数量的字符,`\d`匹配数字,`(?!\w)`匹配后面不是单词字符(即数字后面必须跟着字母或连字符)。
- `(?!.*\d-$)`:不匹配以数字结尾的字符串。`$`表示字符串结尾。
- `[a-z\d]+(-[a-z\d]+)*`:匹配 kebab-case 格式的字符串。`[a-z\d]+`匹配一个或多个字母或数字,`(-[a-z\d]+)*`匹配零个或多个连字符加上一个或多个字母或数字。
- `$`:匹配字符串的结束位置。
注意,这个正则表达式只匹配 kebab-case 格式的字符串,如果需要匹配其他格式的字符串,需要相应地修改正则表达式。
阅读全文