Добрый день. Есть js-код для проверки значения переменной с помощью регулярного выражения:
regEx = new RegExp('^[a-zA-Z0-9_-]{1,50}$');
if (regEx.test(value){
// Делаем что-то
}
Есть ли возможность доработать регулярку так, чтобы она проверяла значение переменной на неравенство каким-то конкретным значениям (например buh и buh2).
Пробывал как-то так:
regEx = new RegExp('(!buh)(!buh2)[a-zA-Z0-9_-]{1,50}');
Но не работает.
Ответ
Можно воспользоваться негативным просмотром вперед
^(?!buh$)(?!buh2$)[a-zA-Z0-9_-]{1,50}$
или так
^(?!buh\d*$)[a-zA-Z0-9_-]{1,50}$
Тест https://regex101.com/r/qUNmZ2/1
Комментариев нет:
Отправить комментарий