[프로그래머스 | Javascript] 코딩테스트 입문 - 문자열 정렬하기 (1)

박기영·2022년 11월 2일
0

프로그래머스

목록 보기
72/159

solution

function solution(my_string) {
    const regex = /^[0-9]+$/;

    let ans = [];
    
    for(let i = 0; i < my_string.length; i++){
        if(regex.test(my_string[i])){
            ans.push(Number(my_string[i]));
        }
    }
    
    return ans.sort((a,b) => a - b);
}

정규식을 활용했다.
my_string의 문자가 0 ~ 9까지의 숫자에 해당하는지 체크하고,
맞다면 ans 배열에 넣는다.
주의할 점은 number 타입으로 변환해서 넣어야 정답 조건에 맞는다는 것!
최종적으로 ans 배열을 오름차순 정렬해주면 끝이다.

다른 분 풀이

function solution(my_string) {
    return my_string.match(/\d/g).sort((a, b) => a - b).map(n => Number(n));
}

이 분도 마찬가지로 정규식을 사용하셨다.
d가 0 ~ 9의 숫자를 의미한다.
match() 메소드를 사용하셨는데, 이는 정규식 조건에 맞는 것들을 배열로 만들어준다.
필자는 두 단계를 거친 표현을, 한번에 해결했다.

profile
나를 믿는 사람들을, 실망시키지 않도록

0개의 댓글