핸드폰번호 가리기 문제이다. 예전에 slice
와 repeat
으로 문제를 풀었었다.
function solution(phone_number) {
let answer = phone_number.length - 4;
return "*".repeat(answer) + phone_number.slice(-4);
}
하지만 정규표현식으로 다시 한번 풀어보고 싶었다.
replace
메서드를 통해서 일치하는 문자를 대체해서 풀어보았다.
다시 푼 문제풀이
\d
: 한문자열에 숫자가 일치할때
(?=\d)
: 앞쪽 숫자 일치
{4}
: 4개 연속일치
function solution(phone_number) {
return phone_number.replace(/\d(?=\d{4})/g,'*')
}