| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 리액트
- CSS
- TypeScript
- 프로그래머스
- 이벤트
- react
- 프론트엔드
- 자바스크립트
- Github
- 자료구조
- useMemo
- useRef
- 코딩테스트
- 내일배움카드
- 개발 공부
- 비전공자
- 메가바이트스쿨
- 모던 자바스크립트 딥 다이브
- 개발자취업부트캠프
- 알고리즘
- JavaScript
- 국비지원교육
- next.js
- 패스트캠퍼스
- 입문
- GIT
- 공식문서
- MegabyteSchool
- 모던 딥 다이브 자바스크립트
- styled-components
Archives
- Today
- Total
개발 기록 남기기✍️
[프로그래머스] 특정 문자 제거하기 본문
🗒️ 문제 설명
문자열 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" |
❇️ 나의 풀이
- 기본적으로 자바스크립트는 대소문자를 구별하기 때문에 내가 신경쓸 영역은 아니다!
- String을 전개한 뒤, filter 함수를 통해서 해당 letter가 없는 배열을 만든다.
- 배열을 다시 join() 을 통해서 string으로 변환한다.
- join()에 파라미터를 주지 않으면 기본값으로 콤마(,)가 들어간다.
- 이때 배열의 원소들을 하나의 문자열로 만들어야 하기 때문에 join의 파라미터에 ('')을 줘야 한다.
- join('')를 사용하면 각 배열의 각 값들을 구분자 없이 연결한다.
function solution(my_string, letter) {
var arr = [...my_string].filter(item => item != letter)
return arr.join('');
}
✍️ 리뷰
✔️ string을 배열로 변환할 필요없이 string.replaceAll(letter, '') 을 하면 바로 원하는 값이 나온다.
✔️ 값의 타입을 변환하지 않고서 문제를 해결할 수 있는 방법이 있는지도 생각해봐야겠다.
✔️ 돌아다니다가 나와 비슷하면서도 아주 신박한 풀이를 봤다. 바로 아래로 넘어가겠다!
💟 본받고 싶은 코드
function solution(my_string, letter) {
const answer = my_string.split(letter).join('')
return answer;
}
✔️ split() 함수를 사용하면 파라미터를 기준으로 문자열이 쪼개지고 배열을 반환한다.
✔️ 이 배열을 join('')을 통해 구분자 없이 하나의 문자열로 이어준다.
'코딩 테스트 연습' 카테고리의 다른 글
| [프로그래머스] 중앙값 구하기 (0) | 2022.12.23 |
|---|---|
| [프로그래머스] 문자 반복 출력하기 (0) | 2022.12.22 |
| [프로그래머스] 편지 (0) | 2022.12.22 |
| [프로그래머스] 피자 나눠 먹기 (1) (0) | 2022.12.22 |
| [프로그래머스] 짝수 홀수 개수 (0) | 2022.12.22 |