Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Scanner;
- import java.util.regex.Matcher;
- import java.util.regex.Pattern;
- public class SongEncryption {
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- String line = scanner.nextLine();
- String regex = "^([A-Z][a-z\' ]+):([A-Z\\\\s]+)$";
- Pattern pattern = Pattern.compile(regex);
- while (!line.equals("end")) {
- StringBuilder encrypted = new StringBuilder();
- Matcher matcher = pattern.matcher(line);
- if (matcher.find()){
- String artist = matcher.group(1);
- String song = matcher.group(2);
- for (int i = 0; i <line.length() ; i++) {
- if (line.charAt(i) == ':'){
- encrypted.append("@");
- }else if (Character.isWhitespace(line.charAt(i))){
- encrypted.append(" ");
- }else if (line.charAt(i) == '\''){
- encrypted.append('\'');
- }else if (Character.isLetter(line.charAt(i))){
- int key = artist.length();
- char encryptedChar = (char)(line.charAt(i)+key);
- if (Character.isLowerCase(encryptedChar) && encryptedChar > 'z'){
- encryptedChar = (char) ('a' + (encryptedChar - 'z' -1));
- encrypted.append((char)encryptedChar);
- }else if (Character.isUpperCase(encryptedChar) && encryptedChar > 90){
- encryptedChar =(char) ('A' + (encryptedChar - 'Z' -1));
- encrypted.append((char) encryptedChar);
- }else {
- encrypted.append((char) encryptedChar);
- }
- }
- }
- System.out.println("Successful encryption: "+ encrypted.toString());
- }else {
- System.out.println("Invalid input!");
- }
- line = scanner.nextLine();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement