携帯番号を隠す


問題の説明
プログラマのモバイルデバイスは、個人情報を保護する通知を送信すると、お客様の電話番号の一部を遮断します.
電話番号に文字列phone numberが付与されている場合、電話番号の後ろ4桁を除いて、他の数字がすべて*で上書きされている文字列は、関数に戻って解決策を完了してください.
せいげんじょうけん
  • sは、長さが4より大きく、20より小さい文字列です.
  • I/O例
    phone_number	return
    "01033334444"	"*******4444"
    "027778888"		"*****8888"
    私のコメント(JAVA)
    class Solution {
        public String solution(String phone_number) {
            String answer = "";
            
            for (int i=0; i<phone_number.length(); i++) {
                answer += (i < phone_number.length()-4) ? "*" : phone_number.charAt(i);
            }
            
            return answer;
        }
    }
    他の人の解答(JAVA)
    答えを出す.
    class Solution {
        public String solution(String phone_number) {
            char[] ch = phone_number.toCharArray();
            for (int i=0; i<ch.length-4; i++) {
                ch[i] = '*';
            }
            
            return String.valueOf(ch);
        }
    }
    説明する.
    class Solution {
        public String solution(String phone_number) {
            return phone_number.replaceAll(".(?=.{4}", "*");
        }
    }
    私の解答(JavaScript)
    function solution(phone_number) {
      let answer = '';
      
      const len = phone_number.length;
      for (let i=0; i<len-4; i++) {
        answer += '*';
      }
      answer += phone_number.substr(len-4, len);
      
      return answer;
    }
    他の人の解答(JavaScript)
    答えを出す.
    function solution(phone_number) {
      return "*".repeat(phone_number.length - 4) + phone_number.slice(-4);
    }
    説明する.
    function solution(phone_number) {
      return phone_number.replace(\/d(?=\d{4}/g, "*");
    }