Advertisement
Todorov_Stanimir

03. Post Office Fundamentals Retake Exam - 27 August 2018

Jul 24th, 2019
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function postOffice(input) {
  2.     let [firstPart, secondPart, thirdPart] = input.shift().split('|');
  3.     let letters = /([#\$%\*&]{1})(?<letters>[A-Z]+)\1/g.exec(firstPart).groups.letters.split('');
  4.     let lengthWords = [];
  5.     letters.forEach(letter => {
  6.         let pattern = new RegExp(`${letter.charCodeAt()}:(?<length>[0][0-9]|[1][0-9]|[2][0])`, 'g');
  7.         if (secondPart.match(pattern)) {
  8.             lengthWords.push(Number(secondPart.match(pattern)[0].split(':')[1]) + 1);
  9.         }
  10.     });
  11.     letters.forEach((letter, index) => {
  12.         let pattern = new RegExp(`^${letter}[^ ]{${lengthWords[index] - 1}}$`, 'g');
  13.         thirdPart.split(' ').forEach(word => {
  14.             if (word.match(pattern)) {
  15.                 console.log(word);
  16.             }
  17.         })
  18.     })
  19. }
  20. postOffice(['sdsGGasAOTPWEEEdas$AOTP$|a65:1.2s65:03d79:01ds84:02! -80:07++ABs90:1.1|adsaArmyd Gara So La Arm Armyw21 Argo O daOfa Or Ti Sar saTheww The Parahaos']);
  21. postOffice(['Urgent"Message.TO$#POAML#|readData79:05:79:0!2reme80:03--23:11{79:05}tak{65:11ar}!77:!23--)77:05ACCSS76:05ad|Remedy Por Ostream :Istream Post sOffices Office Of Ankh-Morpork MR.LIPWIG Mister Lipwig'])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement