문제 설명
문자열 my_string과 문자 letter이 매개변수로 주어집니다. my_string에서 letter를 제거한 문자열을 return하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ my_string의 길이 ≤ 100
- letter은 길이가 1인 영문자입니다.
- my_string과 letter은 알파벳 대소문자로 이루어져 있습니다.
- 대문자와 소문자를 구분합니다.
입출력 예
| my_string | letter | result |
| "abcdef" | "f" | "abcde" |
| "BCBdbe" | "B" | "Cdbe" |
나의 코드
function solution(my_string, letter) {
let result = "";
for (let i = 0; i < my_string.length; i++) {
if (my_string[i] != letter) {
result += my_string[i];
}
}
return result;
}
방식
문자열은 직접 빼기가 어려우므로, 반복문으로 한 글자씩 비교하면서 제거할 문자를 제외한 나머지만 새 문자열에 누적하는 방식으로 풂.
case 1 다른 사람의 코드
function solution(my_string, letter) {
const answer = my_string.split(letter).join('')
return answer;
}
나와의 차이점
처음부터 letter를 기준으로 문자열을 분리한 뒤, 다시 붙이면서 letter를 자연스럽게 제거
case 2 다른 사람의 코드
function solution(my_string, letter) {
return my_string.replaceAll(letter, "");
}
나와의 차이점
replaceAll() 메서드를 활용해 특정 문자를 한 번에 모두 치환하여 훨씬 간결하게 해결했다.
형태
문자열.replaceAll(바꿀값, 새로운값)
의미: 문자열 안의 바꿀값을 모두 찾아 새로운값으로 전부 변경
느낀점
replaceAll처럼 목적에 맞는 내장 메서드를 활용하면 코드 길이를 줄이고 가독성을 높일 수 있다는 점을 느꼈다.
'코딩테스트' 카테고리의 다른 글
| [프로그래머스] 짝수의 합 (0) | 2026.05.05 |
|---|---|
| [프로그래머스] 각도기 (0) | 2026.04.29 |
| [프로그래머스] 문자 반복 출력하기 (0) | 2026.04.28 |
| [프로그래머스] 짝수 홀수 개수 (0) | 2026.04.28 |
| [프로그래머스] 직각삼각형 출력하기 (0) | 2026.04.28 |