모음 제거

HS K·2023년 2월 19일
0
post-custom-banner

문제설명

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

제한사항

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

내가 쓴 답

function solution(my_string) {
    const remove = ['a','e','i','o','u']
    const pattern = new RegExp(remove.join('|'), 'g');
    const result = my_string.replace(pattern, '')
    return result;
}

여러종류의 풀이 보기

1번

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

2번

function solution(my_string) {
    return Array.from(my_string).filter(t => !['a', 'e', 'i', 'o', 'u'].includes(t)).join('');
}

filter()함수로도 풀 수 있다.

3번

function solution(my_string) {
    var answer = my_string.split('');
    for(let i = 0; i < answer.length; i++){
        switch(answer[i]){
            case 'a':
            case 'e':
            case 'i':
            case 'o':
            case 'u':
                answer.splice(i, 1);
                i--;
                break;
        }
    }

    return answer.join('');
}

반복문을 이용한 풀이

후기

  1. 정규 표현식에 대해서 잘 몰라서 정리가 필요했다.
    앞으로 정규표현식을 쓸 일이 많으니까 좀 더 익숙해져야겠다.
profile
주의사항 : 최대한 정확하게 작성하려고 하지만, 틀릴내용이 있을 수도 있으니 유의!
post-custom-banner

0개의 댓글