Нужно регулярное выражение - запретить только нули, разрешить нули с другими числами - PullRequest
1 голос
/ 20 июня 2019

Я хочу проверить строку на соответствие следующим шаблонам:

00;0 (disallow)
00;00 (disallow)
01;123 (disallow)
00;1
00; (disallow)
00;000000 (disallow)
00;1234567890123 (disallow)
00;123456789012
00;10
00;01
00;00001
00;00100
00;0202020
00;1000000
00;00100100

В общем случае строка должна быть ^00;\d{1,12}$, но как устранить ненужные строки в примере выше и разрешить необходимые в одномвыражение регулярного выражения?

Спасибо.

1 Ответ

2 голосов
/ 20 июня 2019

Вы можете использовать это регулярное выражение:

^00;(?!0+$)\d{1,12}$

Демонстрация RegEx

Подробности RegEx:

  • ^00;: совпадение 00; в начале строки
  • (?!0+$): отрицательное ожидание неудачного совпадения при наличии всех нулей
  • \d{1,12}$: сопоставление от 1 до 12 символов любогоцифра до конца
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...