코딩테스트

[프로그래머스] 모음 제거

john-lennon 2026. 6. 7. 16:23

문제 설명 

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

 

제한사항

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

입출력 예

my_string result
"bus" "bs"
"nice to meet you" "nc t mt y"

 


 

나의 코드

function solution(my_string) {
    const ben = ["a", "e", "i", "o", "u"];
    
    return my_string.split("").filter((v) => {return !ben.includes(v)}).join("")
}

 

방식

1. 제거할 모음 배열을 만든다

2. 문자열을 한 글자씩 배열로 자른다

3. filter로 몽므이 아닌 문자만 남긴다

4. 배열을 다시 문자열로 합친다

 


 

다른 사람의 코드

function solution(my_string) {
    return my_string.replace(/[aeiou]/g, '');
}

 

내 코드와 차이점

1. 정규표현식으로 모음을 찾는다

2. 찾은 모음을 빈 문자열('')로 바꾼다

 

 


 

느낀점

다른 사람의 풀이를 보고 replace()오 정규표현식을 이용하면 배열을 만들지 않고도 문자열에서 특정 패턴을 바로 찾아 제거할 수 있다는 것을 알게 되었다.