[프로그래머스 | JavaScript] 핸드폰 번호 가리기

728x90
반응형

(1) 내 코드

function solution(phone_number) {
    let back_number = phone_number.slice(-4);
    let star = '';
    for (let i = 0; i < phone_number.length - 4; i++) {
        star += '*';
    }
    return star + back_number;
}

▶ slice로 뒤에서부터 4글자 반환 : phone_number.slice(-4);

▶ 배열의 길이에서 -4 한길이만큼 ' * ' 추가 

▶ 추가된 * 과 slice로 반환한 값 더해서 출력

 

(2) 다른 사람 풀이 1

function hide_numbers(s){
    var result = "*".repeat(s.length - 4) + s.slice(-4);
    return result;
  }

"*".repeat으로 표현했음

 

(3) 다른 사람 풀이 2

function hide_numbers(s){
  return s.replace(/\d(?=\d{4})/g, "*");
}

▶ 정규식 사용.

▶ / ~~~~(패턴) / g(플래그)

(1)  \d: 숫자 의미

(2) (?=) : 앞쪽 일치 

(3) \d{4} : {}안의 숫자 : 갯수 => 4개

 

끝.

 

 

 

반응형