ss 프로그래머스 1단계 : 핸드폰 번호 가리기
본문 바로가기
알고리즘

프로그래머스 1단계 : 핸드폰 번호 가리기

by 꿈나무개발 2022. 11. 3.
728x90

알고리즘08

📝 문제 설명

프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요..

👉 제한 조건

- phone_number는 길이 4 이상, 20이하인 문자열입니다.

👉 입출력 예

phone_number return
"01033334444" "*******4444"
"027778888" "*****8888"

✌️ 나의 풀이

split()을 이용해 한글자씩 떼어놓고 배열로 반환해 총 길이에서 끝에 4개를 뺀 값만 "*"로 반환하여 join()을 이용해 문자열을 다시 결합하였습니다.
function solution(phone_number) {
    let answer = phone_number.split("");
    
    for(i=0; i<answer.length-4; i++){
        answer[i] = "*";
    }
    return answer.join("");
}

👍 다른 풀이

replace()와 정규식표현을 이용한 풀이방법입니다. 정규식표현과도 친해져야겠습니다.😮‍💨
function hide_numbers(s) {
    return s.replace(/\d(?=\d{4})/g, "*");
}

👍 다른 풀이2

repeat()과 slice()를 이용한 풀이방법입니다. 정말 제 생각은 왜이렇게 짧은지..... 😭
function hide_numbers(s){
    var result = "*".repeat(s.length - 4) + s.slice(-4);
    
    return result;
}
728x90
반응형

댓글


HTML
CSS
JAVASCRIPT

JAVASCRIPT

자세히보기
광고 준비중입니다.