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


문제 설명

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


제한사항

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

입출력 예

my_stringresult
“bus”“bs”
“nice to meet you”“nc t mt y”

입출력 예 설명

입출력 예 #1

  • “bus”에서 모음 u를 제거한 “bs”를 return합니다.

입출력 예 #2

  • “nice to meet you”에서 모음 i, o, e, u를 모두 제거한 “nc t mt y”를 return합니다.

나의 풀이

function solution(my_string) {
  return [...my_string]
    .filter((a) => (["a", "e", "i", "o", "u"].indexOf(a) === -1 ? true : false))
    .join("");
}

나의 두번째 풀이(Code Refactoring)

function solution(my_string) {
  const Vowel = ["a", "e", "i", "o", "u"];
  for (i = 0; i < Vowel.length; i++) {
    my_string = my_string.replaceAll(Vowel[i], "");
  }
  return my_string;
}

// 모음 배열 선언 후 my_string에 문자열의 모음 숫자를 replaceAll 바꿔줌

참고 할 만한 다른 사람의 코드

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

// 정규표현식으로 쉽게 바꾸는 방법