728x90
![[JavaScript] 핸드폰 번호 가리기 [JavaScript] 핸드폰 번호 가리기](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
문제
프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가린다.
전화번호가 문자열 phone_number로 주어질 때,
전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 반환하는 함수를 작성하라.
예시
phone_number | return |
01033334444 | *******4444 |
027778888 | *****8888 |
나의 풀이
const solution = (phone_number) => '*'.repeat(phone_number.length - 4) + phone_number.substring(phone_number.length - 4);
다른 풀이
function hide_numbers(s){
return s.replace(/\d(?=\d{4})/g, "*");
}
풀이 방법
먼저 phone_number의 길이의 -4만큼 *을 반복하기 위해 repeat() 함수를 사용해서 반복해줬다.
그리고 substring을 사용해서 phone_number의 뒤 4자리를 잘라줬다.
이 두개의 문자열을 합쳐서 반환해줬다.
다른 사람의 풀이를 보면 정규식을 사용해서 더욱 간결한 코딩이 가능해졌다.
정규식으로 푼다는 생각은 전혀 못했던 나로서는 엄청난 발견을 한 느낌이었다.
728x90
'🧬알고리즘 > Programmers' 카테고리의 다른 글
[JavaScript] x만큼의 간격이 있는 n개의 숫자 (0) | 2024.08.21 |
---|---|
[JavaScript] 행렬의 덧셈 (0) | 2024.08.21 |
[JavaScript] 제일 작은 수 제거하기 (0) | 2024.08.20 |
[JavaScript] 정수 제곱근 판별 (0) | 2024.08.20 |
[JavaScript] 자연수 뒤집어 배열로 만들기 (0) | 2024.08.19 |
댓글