Страницы

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

вторник, 24 декабря 2019 г.

js регулярные выражения - проверка на несоответствие конкретным значениям

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


Добрый день. Есть 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}');


Но не работает.
    


Ответы

Ответ 1



Можно воспользоваться негативным просмотром вперед ^(?!buh$)(?!buh2$)[a-zA-Z0-9_-]{1,50}$ или так ^(?!buh\d*$)[a-zA-Z0-9_-]{1,50}$ Тест https://regex101.com/r/qUNmZ2/1

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

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