Advertisement
ivanmitkoff

02.Message Decrypter (Java Fund. Final Exam-3.08.19 Group 1)

Dec 5th, 2019
157
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.53 KB | None | 0 0
  1. package PastFinalExams.FinalExam03August2019Group1;
  2.  
  3. import java.util.Scanner;
  4. import java.util.regex.Matcher;
  5. import java.util.regex.Pattern;
  6.  
  7. public class MessageDecrypter {
  8.     public static void main(String[] args) {
  9.         Scanner scanner = new Scanner(System.in);
  10.  
  11.         int inputCounts = Integer.parseInt(scanner.nextLine());
  12.  
  13.         String regex = "^(?<tagBorder>[$%])(?<tag>[A-Za-z]{3,})(\\1): (?<first>\\[\\d+])\\|(?<second>\\[\\d+])\\|(?<third>\\[\\d+])\\|$";
  14.         Pattern pattern = Pattern.compile(regex);
  15.  
  16.         for (int i = 0; i < inputCounts; i++) {
  17.             String message = scanner.nextLine();
  18.  
  19.             Matcher matcher = pattern.matcher(message);
  20.  
  21.             if (matcher.find()) {
  22.                 String tag = matcher.group("tag");
  23.                 String first = matcher.group("first");
  24.                 String second = matcher.group("second");
  25.                 String third = matcher.group("third");
  26.  
  27.                 System.out.printf("%s: ", tag);
  28.                 numberExtractorAndPrintResult(first);
  29.                 numberExtractorAndPrintResult(second);
  30.                 numberExtractorAndPrintResult(third);
  31.                 System.out.println();
  32.             } else {
  33.                 System.out.println("Valid message not found!");
  34.             }
  35.         }
  36.     }
  37.  
  38.     private static void numberExtractorAndPrintResult(String group) {
  39.         group = group.replace("[", "").replace("]", "");
  40.         int number = Integer.parseInt(group);
  41.         System.out.printf("%c", (char) number);
  42.     }
  43. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement