Algorithm/푼 문제

프로그레머스/Lv0/잘라서 배열로 저장하기(미완성)

안개바다 2023. 3. 24. 16:35

정규표현식 완벽 공부 후 다시 복습하기

문제 설명

문자열 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"]

처음 문제를 보고 단순하게 반복문을 이용해 일정하게 문자열을 slicea 메소드를 이용해 잘라내어 문제를 해결했다.

내 풀이
function solution(my_str, n) {
    var answer = [];
    for(i=0;i<my_str.length;i+=n){
        answer.push(my_str.slice(i,i+n))
    }
    return answer;
}

풀이를 제출해 다른 분들의 풀이를 보던 중 정규표현식을 이용한 간단한 풀이가 있어서 기록한다.

정규표현식을 사용한 참고 할 풀이
function solution(my_str, n) {
  return my_str.match(new RegExp(`.{1,${n}}`, "g"));
}