[Programmers] 모음 제거

그래도 해야지·2023년 4월 12일
0

Programmers

목록 보기
9/40
post-thumbnail

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

🤔 해설 1

문자열을 배열로 먼저 바꾸는 것을 생각했는데 그게 아니라 'aeiou'를 먼저 선언해줬다.
그리고 my_string을 split함수를 써서 배열로 만들어주고 filter함수를 써서 조건에 맞는 것들만 출력해서 join함수를 사용하여 조건에 맞는 문자들을 합치게 했다.
!str은 즉 aeiou가 아닌 문자들이고, 그 중에서 my_string의 알파벳들 중에서 aeiou가 아닌 문자들만 출력해서 그 문자들을 join으로 합쳐라라는 뜻이다.

밑에 방법보다 조금 복잡(?)하긴하지만 시간복잡도가 가장 빠름

✅ 답 1

function solution(my_string) {
   const str = 'aeiou'
   const newString = my_string.split('').filter((w) => 
    !str.includes(w)).join('')
   return newString
}

🤔 해설 2

정규식을 사용하여 해결하는 방법도 있었다.
가장 간단한 방법이고 속도도 매우 빨랐음

✅ 답 2

function solution(my_string) {
	return my_string.replace(/['a', 'e', 'i', 'o', 'u']/g, '')
}

0개의 댓글