正则表达式可以匹配像12-345-678 这样的字符串,但是不能匹配像 -1-2-3 或者 1-2-3-4 这样的字符串。
时间: 2023-08-28 16:03:42 浏览: 159
非常抱歉,我之前的回答有误。以下是一个可以匹配符合条件的字符串的正则表达式:
```
^(?!-)(?!.*-$)[0-9]+(-[0-9]+){2}$
```
解释一下正则表达式的各个部分:
- `^` 表示字符串的开头
- `(?!-)` 表示后面不能跟着连字符
- `(?!.*-$)` 表示后面不能跟着连字符,并且连字符不能在结尾
- `[0-9]+` 表示数字组成的字符串,可以出现一次或多次
- `(-[0-9]+){2}` 表示两个连字符,中间必须有数字
- `$` 表示字符串的结尾
这个正则表达式可以匹配像 `12-345-678` 这样的字符串,但是不能匹配像 `-1-2-3` 或者 `1-2-3-4` 这样的字符串。
阅读全文