Делаю валидацию поля input для почты, нужно проверить нет ли во введенном адресе слов gmail, yahoo и т.д. Замучался уже с этими регулярками, ни в какую не хочет. Пропускаю только те адреса, в которых нет слов. Как правильно регулярное выражение написать под это?
Часть кода, в котором вставлено:
isInvalid: function(input) {
var illegalCharacters = input.value.match(/[^a-zA-Z ](?!gmail|yahoo)*/);
return illegalCharacters ? true : false;
}
Суть проверки сводится к тому, чтобы отдать в переменную true если в поле отсутствует gmail, yahoo и еще по списку слова после @, и отдать false если они есть.
И если зyает кто нормальный мануал по регуляркам - поделитесь, те которые гуглятся содержат кучу инфы или не применимой в каких-то простых случаях или без примеров. А нужны банальности вот типа исключить слово, как объединять условия, как проверить только первый символ (типа + перед номером телефона) и т.п.