在X-Y-Z模式中,分隔符为“ - ”,我想检查Y的大小是否为8而没有重复。
Y可以是Y =(A-B-C)的子集,但如果没有,则Y只有值1
1 - num-12345678-num - >在这种情况下,我希望Y有一个值。 2 - num-12345678-234-213-num - >由于Y是子集(12345678-234-213),Y应该具有不同的值。
我正在使用的reggex是' - ([0-9] *) - '并且适用于第一种情况但是获得第二种情况的相同值。有谁可以帮助我?
提前致谢
答案 0 :(得分:1)
您可以在字符类中添加连字符:
-([0-9-]*)-
^
请参阅regex demo
如果将它放在char类的末尾,则无需转义它。
<强>详情:
-
- 连字符([0-9-]*)
- 第1组捕获零个或多个(由于*
量词)数字或/和连字符-
- 再次使用字面连字符。