모음 제거 Lv. 0

박영준·2023년 5월 10일
0

코딩테스트

목록 보기
76/300

문제 설명

영어에선 a, e, i, o, u 다섯 가지 알파벳을 모음으로 분류합니다. 문자열 my_string이 매개변수로 주어질 때 모음을 제거한 문자열을 return하도록 solution 함수를 완성해주세요.

class Solution {
    public String solution(String my_string) {
        String answer = "";
        return answer;
    }
}

제한 사항

  • my_string은 소문자와 공백으로 이루어져 있습니다.
  • 1 ≤ my_string의 길이 ≤ 1,000

입출력 예

입출력 예 설명

  • 입출력 예 #1
    • "bus"에서 모음 u를 제거한 "bs"를 return합니다.
  • 입출력 예 #1
    • "nice to meet you"에서 모음 i, o, e, u를 모두 제거한 "nc t mt y"를 return합니다.

해결법

방법 1

class Solution {
    public String solution(String my_string) {
    
        String answer = "";
        String[] replace = {"a", "e", "i", "o", "u"};
        
        for (int i = 0; i < replace.length; i++) {
			if (my_string.contains(replace[i])) {		// 모음을 포함하고 있을 경우
				answer = my_string.replaceAll(replace[i], "");		// 모음 대신 공백으로 대체한다.
				my_string = answer;
			} else {			// 모음을 포함하지 않을 경우
                answer = my_string;		// 그대로 둔다.
            }
		}
        
        return answer;
    }
}
  • contains()

    • 대상 문자열에 특정 문자열이 포함되어 있는지 확인
    • 대/소문자를 구분한다.
    • 결과 : true/false
  • replaceAall(바꾸고 싶은 문자, 바꿀 문자)
    참고: String 클래스 - 2) replaceAll()

  • my_string = answer

    • 둘의 위치 바꾸지 않도록 주의

방법 2

import java.util.*;

class Solution {
    public String solution(String my_string) {
    
        String answer = "";
    
    	List<String> list = new ArrayList<>();		// 배열 선언
        String[] my = my_string.split("");		// my_string의 문자열의 공백을 제거한 새로운 배열 my 생성
        
        for (int i = 0; i < my.length; i++) {
        	if (my[i].equals("a") || my[i].equals("e") || my[i].equals("i") || my[i].equals("o") || my[i].equals("u")) {
            	list.add("");		// 모음을 포함하면 공백을 넣기
        	} else {
        		list.add(my[i]);		// 모음을 포함하지 않는다면 그대로 넣기
    		}
        }
        
        for (String i : list) {		// 배열 list에서 i를 꺼내온다.
        	answer += i;		// 꺼내온 i 를 answer에 더해주기
        }
        
        return answer;
    }
}    
  • 배열을 이용한 방법

참고: 배열, ArrayList

방법 3

class Solution {
    public String solution(String my_string) {
        String answer = "";

        answer = my_string.replaceAll("[aeiou]", "");

        return answer;
    }
}

방법 4

class Solution {
    public String solution(String myString) {
    
        return myString.replaceAll("a|e|i|o|u", "");
    }
}

방법 5

class Solution {
    public String solution(String my_string) {

        my_string = my_string.replace("a", "");
        my_string = my_string.replace("e", "");
        my_string = my_string.replace("i", "");
        my_string = my_string.replace("o", "");
        my_string = my_string.replace("u", "");

        return my_string;
    }
}

모음 제거

profile
개발자로 거듭나기!

0개의 댓글