Задача: необходимо проверить пароль на сложность по критериям:
- есть маленькие буквы
- есть большие буквы
- есть специальные символы
- пароль длиннее 7 символов
Ну в принципе подойдет чтото-вроде:
function PasswordValidTest(pass){
var count = 0;
count += /[a-z]/.test(pass) ? 1 : 0; //есть маленькие буквы
count += /[A-Z]/.test(pass) ? 1 : 0; //есть большие буквы
count += /\d/.test(pass) ? 1 : 0;
count += /[^\w\d\s]/.test(pass) ? 1 : 0;
(count>2 & !/[\s]+/.test(pass)) ? res=true:res=false;
if ((res==true)&&(pass.length<7)) res=false;
return res;
}
Ну и в нагрузку проверка Email:
function EmailValidTest(email){
var re = /^[\w-\.]+@[\w-]+\.[a-z]{2,4}$/i;
return re.test(email);
};
function EmailValidRulesTest(email){
validmails=['@mail.ru','@yandex.ru','@ya.ru','@list.ru','@inbox.ru','@gmail.com','@icloud.com','@bk.ru'];
re=false;
validmails.forEach(function(item, i, validmails){
if (email.indexOf(item)!==-1) re=true;
});
return re;
};