코딩테스트

[코딩테스트] 문자열 정렬하기(1)

홍시_코딩기록 2024. 3. 30. 11:27

 

📌 내 코드

function solution(my_string) {
    const chkNum = /[0-9]/;
    let result = [];
    for(let i = 0; i < my_string.length; i++) {
        if (chkNum.test(my_string[i])) {
            result.push(Number(my_string[i]))
        } 
    }
    result.sort((a,b) => a - b)
    return result

}

- 문자열에서 숫자를 체크하여 배열로 만들어야겠다고 생각했다.

- 문자열인 숫자를 정수로 바꿔서 배열에 넣어주고 오름차순으로 변경했다.

 

📌 다른 사람 코드

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

- 마찬가지로 정규식을 이용한 방법인데 일치하는 숫자를 찾아 Array로 반환하고, 오름차순, 그리고 정수로 바꿔주었다.

match()
문자열이 정규식과 일치하면, 일치하는 전체 문자열을 첫 번째 요소로 포함하는 Array를 반환한 다음 괄호 안에 캡처된 결과가 옵니다. 일치하는 것이 없으면 null이 반환됩니다.