[프로그래머스] 모음 제거 (JS)
2022. 11. 27. 17:15ㆍ코딩테스트
728x90
[프로그래머스] 모음 제거 (JavaScript)
👉 문제설명
영어에선 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" |
👉 입출력 예 설명
입출력 예 #1
- "bus"에서 모음 u를 제거한 "bs"를 return합니다.
입출력 예 #1
- "nice to meet you"에서 모음 i, o, e, u를 모두 제거한 "nc t mt y"를 return합니다.
👉 풀이
첫 번째 풀이
처음 문제 풀 때 replace() 와 정규표현식을 이용해서 풀고 싶었으나.. 검색하기전에는 기억이 나지 않아서 야매로 풀었다.
replaceAll() 을 이용하여 모음이 있을 경우에는 해당 문자를 " " (공백2개) 로 변경하여 그 부분만 split 으로 나눠서 join() 으로 합쳤다.
내가 봐도.. 별로인 코드
function solution(my_string) {
const a = ['a', 'e', 'i', 'o', 'u'];
for(let i=0; i<a.length; i++){
my_string = my_string.replaceAll(a[i]," ")
}
return my_string.split(" ").join("")
}
두 번째 풀이
두 번째 풀이는 replace() , 정규식표현을 이용하여 이전 코드와 다르게 짧게 수정하였다.
function solution(my_string) {
const regex = /[aeiou]/g;
return my_string.replace(regex,'');
}
728x90
'코딩테스트' 카테고리의 다른 글
[프로그래머스] 문자열 밀기 (JS) (0) | 2022.11.28 |
---|---|
[프로그래머스] 순서쌍의 개수 (JS) (0) | 2022.11.27 |