프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.
class Solution {
public String solution(String phone_number) {
//phone_number를 두 부분으로 나누어준다.
String front = phone_number.substring(0,phone_number.length()-4);
String back = phone_number.substring(phone_number.length()-4,phone_number.length());
//front 부분을 *으로 치환한다.
front=front.replaceAll("\\d","*");
String answer = front+back;
return answer;
}
}
phone_number 문자열을 두 부분으로 나눈다.
front : 처음부터 뒷 4자리 전까지back : front 다음부터 마지막까지front 부분을 *으로 치환한다.
\\d 또는 [0-9] 활용!front와 back을 결합한다.
substring(int startIndex)
substring(int startIndex, int endIndex)
replace(CharSequence target, CharSequence replacement)
replaceAll(String regex, String replacement)
[0-9]\d \\d\)는 이스케이프 문자로 사용되기 때문에\\d를 사용해야 한다.
덕분에 좋은 정보 얻어갑니다, 감사합니다.