Страницы

Поиск по вопросам

вторник, 25 февраля 2020 г.

Запрет слова в регулярном выражении

#регулярные_выражения


Есть регулярное выражение, допустим ^[a-zA-Z]{1,}$. Оно разрешает все латинские буквы
в любом количестве больше нуля. Но есть слово, допустим test, которое оно должно запретить
несмотря на то, что все его символы разрешены. Как такое реализовать?
    


Ответы

Ответ 1



Вам нужен negative lookahead: ^(?!.*test)[a-zA-Z]+$ Разрешает любое количество латинских букв, большее либо равное 1, но запрещает строки, в которых есть вхождение "test" на любой позиции.

Ответ 2



Вам нужно воспользоваться негативной опережающей проверкой (?!...) ^/(?!test)([a-zA-Z]{1,})$

Комментариев нет:

Отправить комментарий