프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.
phone_number | return |
---|---|
"01033334444" | "*******4444" |
"027778888" | "*****8888" |
function solution(phone_number) {
const length = phone_number.length;
return "*".repeat(length - 4) + phone_number.substring(length - 4, length);
}
phone_number가 몇 자리가 됐든 뒤의 네 자리만 남기면 되기 때문에 substring을 이용해 뒤의 네 자리만 남겨준다!
앞의 *
의 길이는 은 전체길이-4
를 이용해 구해준 뒤 두 개를 더해주면 끝!
function hide_numbers(s) {
return s.replace(/\d(?=\d{4})/g, "*");
}
나도 나름 짧게 썼다고 생각했는데 이렇게 정규식을 이용하는 방법도 있더라..!
간단한 문제라도 더 쉬운방법이 나온다!