코딩 테스트/1. String(문자열)
Q1 - 5 특정 문자 뒤집기
길동이이이잉
2021. 9. 4. 16:41
728x90
반응형
5. 특정 문자 뒤집기
* 설명
영어 알파벳과 특수문자로 구성된 문자열이 주어지면 영어 알파벳만 뒤집고,
특수문자는 자기 자리에 그대로 있는 문자열을 만들어 출력하는 프로그램을 작성하세요.
* 입력
첫 줄에 길이가 100을 넘지 않는 문자열이 주어집니다.
* 출력
첫 줄에 알파벳만 뒤집힌 문자열을 출력합니다.
* 예시 입력 1
a#b!GE*T@S
* 예시 출력 1
S#T!EG*b@a
import java.util.Scanner;
import java.util.regex.Pattern;
public class Test5 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
String input1 = in.nextLine();
int size = input1.length()-1;
char[] text = input1.toCharArray();
for(int i = 0; i < input1.length(); i++) {
if (input1.length()/2 <= i){
break;
}
if(Pattern.matches("^[a-zA-Z]*$", Character.toString(text[i]))) {
for(int j = size; j > -1; j--) {
if(Pattern.matches("^[a-zA-Z]*$", Character.toString(text[j]))) {
char tmp = text[j];////맨 뒤
text[j] = text[i];
text[i] = tmp;
size = size-1;
break;
}else {
size = size-1;
}
}
}
}
System.out.println(text);
in.close();
}
}
728x90
반응형