Advertisement
eltosheva

Fancy Barcodes

Apr 4th, 2020
250
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.44 KB | None | 0 0
  1. import java.util.Arrays;
  2. import java.util.Scanner;
  3. import java.util.regex.Matcher;
  4. import java.util.regex.Pattern;
  5.  
  6. public class FancyBarcodes {
  7.  
  8.     public static void main(String[] args) {
  9.         Scanner scanner = new Scanner(System.in);
  10.         Pattern pattern = Pattern.compile("(@[#]+)(?<product>[A-Z][A-Za-z0-9]{3,}[A-Z])(@[#]+)");
  11.         Pattern pattern1 = Pattern.compile("[\\d*]");
  12.         int n = Integer.parseInt(scanner.nextLine());
  13.  
  14.         for (int i = 0; i < n; i++) {
  15.             String barcode = scanner.nextLine();
  16.             Matcher matcher = pattern.matcher(barcode);
  17.             StringBuilder productGroup = new StringBuilder();
  18.             if (matcher.find()) {
  19.                 String product = matcher.group("product");
  20.                 Matcher matcher1 = pattern1.matcher(product);
  21.                 if (!matcher1.find()) {
  22.                     System.out.println("Product group: " + "00");
  23.                 } else {
  24.                     for(int j = 0; j < product.length(); j++){
  25.                         final char c = product.charAt(j);
  26.                         if(c > 47 && c < 58){
  27.                             productGroup.append(c);
  28.                         }
  29.                     }
  30.                     System.out.println(String.format("Product group: %s", productGroup.toString()));
  31.                 }
  32.             } else {
  33.                 System.out.println("Invalid barcode");
  34.             }
  35.         }
  36.     }
  37. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement