| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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
- 모던 딥 다이브 자바스크립트
- 프론트엔드
- GIT
- 개발자취업부트캠프
- MegabyteSchool
- 리액트
- 모던 자바스크립트 딥 다이브
- useMemo
- useRef
- TypeScript
- react
- 자바스크립트
- 공식문서
- 입문
- 국비지원교육
- 비전공자
- 알고리즘
- 프로그래머스
- 자료구조
- CSS
- 개발 공부
- next.js
- 이벤트
- Github
- 메가바이트스쿨
- 패스트캠퍼스
- 코딩테스트
- 내일배움카드
- JavaScript
- styled-components
Archives
- Today
- Total
개발 기록 남기기✍️
[프로그래머스] 잘라서 배열로 저장하기 본문
🗒️ 문제 설명
문자열 my_str과 n이 매개변수로 주어질 때, my_str을 길이 n씩 잘라서 저장한 배열을 return하도록 solution 함수를 완성해주세요.
⚠️ 제한 사항
- 1 ≤ my_str의 길이 ≤ 100
- 1 ≤ n ≤ my_str의 길이
- my_str은 알파벳 소문자, 대문자, 숫자로 이루어져 있습니다.
👀 입출력 예
| my_str | n | result |
| "abc1Addfggg4556b" | 6 | ["abc1Ad", "dfggg4", "556b"] |
| "abcdef123" | 3 | ["abc", "def", "123"] |
❇️ 나의 풀이
- 정규표현식을 사용하면 아주 깔끔쓰!
- .{1, 3}의 경우, .(마침표)는 임의의 한 문자와 일치를 뜻하고 {1,3}은 앞의 조건이 1개 이상 3개 이하 연속 일치를 뜻한다.
- 즉 .{1,3}은 모든 문자를 1개 이상 n개 이하씩 묶어서 배열로 반환한다.
- 그런데 문제가 있다, n은 변수이기 때문에 백틱으로 묶어 `/.{1,${n}/g` (리터럴)로 표현하면 정규표현식이 아닌 문자 데이터로 인식이 되기 떄문에 동작하지 않는다.
- 그렇기 때문에 new RegExp로 정규표현식을 생성한 뒤, 변수에 할당한 뒤 정규표현식 자리에 변수를 넣도록 한다.
function solution(my_str, n) {
var reg = new RegExp(`.{1,${n}}`, 'g')
return my_str.match(reg)
}'코딩 테스트 연습' 카테고리의 다른 글
| [프로그래머스] 문자열 계산하기 (0) | 2023.01.02 |
|---|---|
| [프로그래머스] 2차원으로 만들기 (0) | 2023.01.02 |
| [프로그래머스] 문자열 밀기 (0) | 2023.01.02 |
| [프로그래머스] 등수 매기기 (0) | 2022.12.31 |
| [프로그래머스] 분수의 덧셈 (0) | 2022.12.31 |