Advertisement
bebo231312312321

Untitled

Apr 3rd, 2023
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function passwordValidator(input) {
  2.     let password = input.shift();
  3.  
  4.     while (input[0] !== "Complete") {
  5.         let tokens = input.shift().split(" ");
  6.         let command = tokens[0];
  7.  
  8.         switch (command) {
  9.             case "Make":
  10.                 let caseOption = tokens[1];
  11.                 let index = Number(tokens[2]);
  12.  
  13.                 if (caseOption === "Upper") {
  14.                     let word = password.substring(index, index + 1)
  15.                     let letter = password.substring(index, index + 1).toUpperCase()
  16.                     password = password.replace(word, letter)
  17.                     console.log(password);
  18.                 } else if (caseOption === "Lower") {
  19.                     let word = password.substring(index, index + 1)
  20.                     let letter = password.substring(index, index + 1).toLowerCase()
  21.                     password = password.replace(word, letter)
  22.                     console.log(password);
  23.                 }
  24.                 break;
  25.             case "Insert":
  26.                 let i = tokens[1];
  27.                 let letter = tokens[2];
  28.                 password = password.substring(0, i) + letter + password.substring(i,)
  29.                 console.log(password);
  30.  
  31.                 break;
  32.             case "Replace":
  33.                 let currentValue = tokens[1]
  34.                 let indexCurrentValue = (tokens[1]).charCodeAt(0)
  35.                 let value = Number(tokens[2])
  36.                 let sum = indexCurrentValue + value;
  37.                 let newChar = String.fromCharCode(sum);
  38.                 password = password.split(currentValue).join(newChar)
  39.                 console.log(password);
  40.                 break;
  41.  
  42.             case "Validation":
  43.                 let nonChar = /\W/g;
  44.                 let upperCase = /[A-Z]/g;
  45.                 let lowerCase = /[a-z]/g;
  46.                 let digit = /\d/g;
  47.                 let matchNonchar = password.match(nonChar);
  48.                 let matchUpperCase = password.match(upperCase);
  49.                 let matchLowerCase = password.match(lowerCase);
  50.                 let matchDigit = password.match(digit);
  51.  
  52.                 if (password.length < 8) {
  53.                     console.log(`Password must be at least 8 characters long!`);
  54.                 }
  55.                 if (matchNonchar) {
  56.                     console.log(`Password must consist only of letters, digits and _!`);
  57.                 }
  58.                 if (!matchUpperCase) {
  59.                     console.log(`Password must consist at least one uppercase letter!`);
  60.                 }
  61.                 if (!matchLowerCase) {
  62.                     console.log(`Password must consist at least one lowercase letter!`);
  63.                 }
  64.                 if (!matchDigit) {
  65.                     console.log(`Password must consist at least one digit!`);
  66.                 }
  67.         }
  68.     }
  69. }
  70. passwordValidator(['123456789',
  71.     'Insert 3 R',
  72.     'Replace 5 15',
  73.     'Validation',
  74.     'Make Lower 3',
  75.     'Complete'])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement