что у меня есть это:
[^\/][\d]*[^\/]
Проблема, которая у меня все еще есть: sla sh в начале все еще разрешено
У кого-нибудь есть идея?
Заранее спасибо
[^/] соответствует любому символу, а не только ди git. Кроме того, для проверки всей строки необходимо использовать привязки или метод, который привязывает совпадения в начале и конце строки.
[^/]
Вы можете использовать
^(?!\/)[\d\/]*$(?<!\/)
или
^\d(?:[\/\d]*\d)?$
См. Демонстрационную версию regex # 1 и демонстрационную версию regex # 2 .
Подробности регулярного выражения # 1
^
(?!\/)
/
[\d\/]*
$
(?<!\/)
Regex # 2 подробнее
\d
(?:[\/\d]*\d)?
Попробуйте с этим:
(^[\d]$|^[\d][\/\d]*[\d]$)
Смотрите демо здесь
^[\d] --- start with digit [\/\d]* --- / or digit can be 0 or more times [\d]$ --- end with digit
Еще один случай только для 1 di git:
^[\d]$ --- start and end digit only