프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.
phone_number는 길이 4 이상, 20이하인 문자열입니다.
입출력 예
1) for문을 쓰려고 했는데 너무 복잡해질 거 같다
2) 뒤의 네자리만 빼고 앞에는 전부 *로 출력하기 // repeat 사용하기
3) 뒤의 네자리만 숫자로 붙여주기 // slice 사용하기
function solution(phone_number) {
let n = phone_number.length;
let start = "*".repeat(n - 4);
return start + phone_number.slice(-4);
}
// repeat 메소드
// String.repeat(count)
// String : 반복하고자 하는 문자, count : 문자열을 거듭 덧붙이는 횟수
// slice 메소드
// 배열을 잘라서 새롭게 추출해줌
// arr.slice(-n) // 마지막 n개의 요소 추출
// for문 사용
function solution(phone_number) {
newStr = "";
for (let i = 0; i < phone_number.length; i++) {
newStr += i < phone_number.length - 4 ? "*" : phone_number[i];
}
return newStr;
}
// 정규식 사용
function hide_numbers(s) {
return s.replace(/\d(?=\d{4})/g, "*");
}