728x90
# 문제
영어에선 a, e, i, o, u 다섯 가지 알파벳을 모음으로 분류합니다. 문자열 my_string이 매개변수로 주어질 때 모음을 제거한 문자열을 return하도록 solution 함수를 완성해주세요.
# 답안
// 방법 1) 정규 표현식 사용
function solution(my_string) {
return my_string.replace(/[aeiou]/g, '');
}
// 방법2) for 반복문 사용
function solution(my_string) {
const vowels = ['a', 'e', 'i', 'o', 'u']; // 모음 선언
let result = ''; // 빈 문자열 선언
for (let i = 0; i < my_string.length; i++) {
if (!vowels.includes(my_string[i])) { //
result += my_string[i];
}
}
return result;
}
< 방법1 설명 >
/[aeiou]/g
- [aeiou]는 소문자 모음을 나타냄
- g 플래그는 전역 검색을 나타내며 모든 모음을 찾아내도록 함
replace()
- 정규 표현식에 해당하는 부분을 다른 문자열로 대체함.
- 여기서는 모음을 빈 문자열로 대체하여 제거함
// ex. solution("hello")를 호출하면 "hll"이 반환됨
< 방법2 설명 >
vowels.includes(my_string[i])
현재 문자가 vowels 배열에 포함되어 있는지 확인
!vowels.includes(my_string[i])가 true이다. = 현재 문자가 모음이 아니다.
예컨대, my_string[0]이 "h"면, h가 vowels 안에 includes 된게 아니다(!)라는 뜻. 즉, h가 모음이 아니다.
이 경우에는, "h"를 result 문자열에 추가
728x90
'Coding Test > Programmers' 카테고리의 다른 글
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 40 - 숨어있는 숫자의 덧셈(1)) (0) | 2024.02.09 |
---|---|
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 39 - 자릿수 더하기) (0) | 2024.02.07 |
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 37 - 제곱수 판별하기) (0) | 2024.02.07 |
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 36 - 삼각형의 완성조건 (1)) (2) | 2024.02.07 |
[프로그래머스/JavaScript] 코딩 테스트풀이 (문제 35 - 세균 증식) (2) | 2024.02.07 |