Advertisement
Guest User

(Demo) String Manipulator - Softuni ivan

a guest
Oct 15th, 2019
326
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.88 KB | None | 0 0
  1.  
  2.  
  3. import java.util.*;
  4. import java.util.regex.Matcher;
  5. import java.util.regex.Pattern;
  6.  
  7. public class Main {
  8.  
  9.     public static void main(String[] args) {
  10.  
  11.         Scanner scanner = new Scanner(System.in);
  12.  
  13.  
  14.         StringBuilder finalString = new StringBuilder();
  15.  
  16.         String input = scanner.nextLine();
  17.  
  18.         while (!input.toLowerCase().equals("end")) {
  19.             if (input.toLowerCase().equals("end")) {
  20.                 break;
  21.  
  22.             }
  23.             String[] tokens = input.split(" +");
  24.             if (tokens[0].toLowerCase().equals("add")) {
  25.                 finalString.append(tokens[1]);
  26.             } else if (tokens[0].toLowerCase().equals("upgrade")) {
  27.                 for (int i = 0; i < finalString.length(); i++) {
  28.                     char currentChar = finalString.charAt(i);
  29.                     int charNumber = currentChar + 1;
  30.                     char replaceWith = (char) charNumber;
  31.  
  32.                     if (currentChar == tokens[1].charAt(0)) {
  33.  
  34.                         finalString.setCharAt(i, replaceWith);
  35.                     }
  36.  
  37.                 }
  38.  
  39.  
  40.             } else if (tokens[0].toLowerCase().equals("print")) {
  41.                 System.out.println(finalString.toString());
  42.             } else if (tokens[0].toLowerCase().equals("index")) {
  43.                 int counter = 0;
  44.                 for (int i = 0; i < finalString.length(); i++) {
  45.                     char currentChar = finalString.charAt(i);
  46.                     if (currentChar == tokens[1].charAt(0)) {
  47.                         System.out.print(i + " ");
  48.                         counter++;
  49.                     }
  50.                 }
  51.                 if (counter == 0) {
  52.                     System.out.println("None");
  53.                 }
  54.                 System.out.println();
  55.  
  56.             } else if (tokens[0].toLowerCase().equals("remove")) {
  57.                 // bbrbcbdbbrb
  58.                 // bbrb
  59. //                StringBuilder foundedWords = new StringBuilder();
  60.                 String currentStringForRemove = tokens[1];
  61.  
  62.                 delete(finalString, currentStringForRemove);
  63.  
  64.  
  65.             } else {
  66.                 System.out.println("nevalidna komanda!");
  67.  
  68.             }
  69.             input = scanner.nextLine();
  70.         }
  71.  
  72.  
  73.     }
  74.  
  75.     public static void delete(StringBuilder sb, String s) {
  76.  
  77. //        while (sb.toString().contains(s)) {
  78.  
  79.         for (int c = 0; c < sb.length(); c++) {
  80.             int start = c;
  81. //            if (sb.length() == s.length()) {
  82. //                break;
  83. //            }
  84.             StringBuilder emptySb = new StringBuilder();
  85.             for (int i = start; i < start + s.length(); i++) {
  86.                 emptySb.append(sb.toString().charAt(i));
  87.             }
  88.             if (emptySb.toString().equals(s)) {
  89.                 sb.delete(start, start + s.length());
  90.  
  91.             }
  92.         }
  93.  
  94.  
  95. //
  96. //        }
  97.  
  98.     }
  99. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement