Как запретить последовательные пять цифр и более с помощью регулярных выражений? - PullRequest
0 голосов
/ 12 июня 2018

Я хотел бы запретить, если строка содержит пять последовательных цифр и более, например: 12345, 11111, 123456.

Я добился успеха в запрещении любого числа в строке с использованием следующего регулярного выражения:

/^[^0-9]+$/

Я создал демоверсию песочницы .Я хочу запретить пять последовательных чисел / цифр.В настоящее время запрещено любое число.

Ответы [ 2 ]

0 голосов
/ 12 июня 2018

Регулярное выражение, совпадающее с 5 последовательными цифрами, равно \d{5}.

Кому запрещать такую ​​строку (на самом деле, даже больше последовательных цифр), при любая позиция висходная строка, это регулярное выражение должно быть помещено:

  • внутри отрицательного поиска : (?!...),
  • после регулярного выражения, соответствующего любому числу (ноль или более) любых символов .*? (вариант с неохотой).

После этого отрицательного поиска должно быть регулярное выражение, соответствующее всей строке: .+ (я полагаю, что вас не интересует пустоестрока, поэтому я ставлю +, а не *).

Перед всем приведенным выше регулярным выражением должно стоять ^, а затем $ якорей.

Таким образом, все регулярное выражениеможет быть: ^(?!.*?\d{5}).+$

0 голосов
/ 12 июня 2018

Это хороший сайт для проверки вашего регулярного выражения:

https://regex101.com/

Вы можете попробовать это:

/^[0-9]{5,}$/

5 номеровили больше передаст регулярное выражение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...