[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/JAVA] 27. ํ•ธ๋“œํฐ ๋ฒˆํ˜ธ ๊ฐ€๋ฆฌ๊ธฐ

2025. 3. 25. 11:24ยท๋‚ด์ผ๋ฐฐ์›€์บ ํ”„/์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ฝ”๋“œ์นดํƒ€

โ‡๏ธ ๋ฌธ์ œ ์„ค๋ช…

์ „ํ™”๋ฒˆํ˜ธ๊ฐ€ ๋ฌธ์ž์—ด phone_number๋กœ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ „ํ™”๋ฒˆํ˜ธ์˜ ๋’ท 4์ž๋ฆฌ๋ฅผ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€ ์ˆซ์ž๋ฅผ ์ „๋ถ€ *์œผ๋กœ ๊ฐ€๋ฆฐ ๋ฌธ์ž์—ด์„ ๋ฆฌํ„ดํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.

https://school.programmers.co.kr/learn/courses/30/lessons/12948

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

SW๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ํ‰๊ฐ€, ๊ต์œก, ์ฑ„์šฉ๊นŒ์ง€ Total Solution์„ ์ œ๊ณตํ•˜๋Š” ๊ฐœ๋ฐœ์ž ์„ฑ์žฅ์„ ์œ„ํ•œ ๋ฒ ์ด์Šค์บ ํ”„

programmers.co.kr

 

โ‡๏ธ ์š”๊ตฌ์‚ฌํ•ญ

1. phone_number๋Š” ๊ธธ์ด 4 ์ด์ƒ, 20์ดํ•˜์ธ ๋ฌธ์ž์—ด์ด๋‹ค.

 

โ‡๏ธ ์ž‘์„ฑ ์ฝ”๋“œ

class Solution {
    public String solution(String phone_number) {
        int n = phone_number.length();
        
        String answer = "*";
        answer = answer.repeat(n-4).concat(phone_number.substring(n-4));

        return answer;
    }
}

 

โ‡๏ธ ์ฝ”๋“œ ํ’€์ด

1.

int n = phone_number.length();

์ž…๋ ฅ๋ฐ›์€ ์ „ํ™”๋ฒˆํ˜ธ์˜ ๊ธธ์ด๋ฅผ ๊ตฌํ•œ๋‹ค.

 

2.

String answer = "*";
answer = answer.repeat(n-4).concat(phone_number.substring(n-4));

answer.repeat์„ ์‚ฌ์šฉํ•ด์„œ, *์„ (์ „์ฒด๊ธธ์ด-4)๊ฐœ ๋ถ™์ธ๋‹ค.

phone_number.substring(n-4)๋ฅผ ์‚ฌ์šฉํ•ด์„œ, phone_number์˜ ๋’ท ๋„ค์ž๋ฆฌ๋ฅผ ์ถ”์ถœํ•œ๋‹ค.

concat์œผ๋กœ ์œ„ ๋‘ ๋ฌธ์ž์—ด์„ ์—ฐ๊ฒฐํ•œ๋‹ค. (๊ทธ๋ƒฅ +๋กœ ์—ฐ๊ฒฐํ•ด๋„ ๋œ๋‹ค)


โ‡๏ธ ๋ฒˆ์™ธ

โœ”๏ธ toCharArray()๋กœ ๋ฌธ์ž์—ด(String)์„ ๋ฌธ์ž ๋ฐฐ์—ด(char[])๋กœ ๋ฐ”๊พธ๊ธฐ

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);
  }
}

String์„ ๋ฐฐ์—ด๋กœ ์น˜ํ™˜ํ•œ๋‹ค๋ฉด, ์ธ๋ฑ์Šค๋ฅผ ํ™œ์šฉํ•ด ๋ฌธ์ž๋ฅผ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋‹ค.

๋ฌธ์ž๋ฅผ ๋ฌธ์ž์—ด๋กœ ์น˜ํ™˜ ํ›„ for๋ฐ˜๋ณต๋ฌธ์„ ์‚ฌ์šฉํ•ด ๋’ท 4์ž๋ฆฌ๋ฅผ ๋นผ๊ณ  ๋ชจ๋‘ *๋กœ ์น˜ํ™˜ํ•œ๋‹ค.

๋งˆ์ง€๋ง‰์— char[] ๋ฌธ์ž ๋ฐฐ์—ด์„ ๋‹ค์‹œ String์œผ๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ ๋ฉ”์„œ๋“œ์˜ ๋ฐ˜ํ™˜ ํƒ€์ž…์„ ๋งž์ถฐ์ค˜์•ผํ•œ๋‹ค.

 

โœ”๏ธ ์ •๊ทœ์‹์„ ํ™œ์šฉํ•˜๊ธฐ

class Solution {
  public String solution(String phone_number) {
    return phone_number.replaceAll(".(?=.{4})", "*");
  }
}

์ •๊ทœ์‹์€ ๋ฌธ์ž์—ด์—์„œ ์–ด๋–ค ํŒจํ„ด์„ ์ฐพ๊ฑฐ๋‚˜ ๋ฐ”๊พธ๋Š” ๋ฐ ์‚ฌ์šฉํ•œ๋‹ค. ์•„๋ž˜์™€๊ฐ™์€ ๋‹ค์–‘ํ•œ ํ˜•์‹์ด ์žˆ๋‹ค.

์ •๊ทœ์‹ ์˜๋ฏธ
\d ์ˆซ์ž ํ•˜๋‚˜
. ์•„๋ฌด ๋ฌธ์ž ํ•˜๋‚˜
a* a๊ฐ€ 0๊ฐœ ์ด์ƒ ๋ฐ˜๋ณต
.{4} ๋ฌธ์ž ์•„๋ฌด๊ฑฐ๋‚˜ 4๊ฐœ
(?=์กฐ๊ฑด) ์•ž์„ ๋ฐ”๊พธ๋˜ ๋˜๋Š” ์กฐ๊ฑด๋งŒ ๊ฒ€์‚ฌ

์ž‘์„ฑ๋œ ์ฝ”๋“œ์—์„œ๋Š” replaceAll์„ ํ™œ์šฉํ•˜์—ฌ, ์กฐ๊ฑด์— ๋งž๊ฒŒ ๋ฌธ์ž์—ด์„ ๋ณ€๊ฒฝํ•œ๋‹ค.

์กฐ๊ฑด์‹์˜ ์˜๋ฏธ๋Š”  . ๋ฌธ์ž๊ฐ€  (?=.{4})  ๋’ค์— 4๊ฐœ์˜ ๋ฌธ์ž๊ฐ€ ๋‚จ์•„์žˆ๋Š” ๊ฒฝ์šฐ ์ด๋‹ค.์ฆ‰, ์ € ํ•œ์ค„์˜ ์ฝ”๋“œ๋Š” ๋’ค์— 4์ž๋ฆฌ๊ฐ€ ๋‚จ์•„์žˆ๋Š” ๋ฌธ์ž๋Š” ๋‹ค *๋กœ ๋ฐ”๊ฟ”๋‹ฌ๋ผ๋Š” ์˜๋ฏธ๊ฐ€ ๋œ๋‹ค.

'๋‚ด์ผ๋ฐฐ์›€์บ ํ”„ > ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ฝ”๋“œ์นดํƒ€' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/JAVA] 29. ์ œ์ผ ์ž‘์€ ์ˆ˜ ์ œ๊ฑฐํ•˜๊ธฐ  (0) 2025.03.27
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/JAVA] 28. ์—†๋Š” ์ˆซ์ž ๋”ํ•˜๊ธฐ  (0) 2025.03.26
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/JAVA] 26. ์Œ์–‘ ๋”ํ•˜๊ธฐ  (0) 2025.03.24
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/JAVA] 25. ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ์ˆซ์ž ๋ฐฐ์—ด  (1) 2025.03.23
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/JAVA] 24. ์„œ์šธ์—์„œ ๊น€์„œ๋ฐฉ ์ฐพ๊ธฐ  (0) 2025.03.22
'๋‚ด์ผ๋ฐฐ์›€์บ ํ”„/์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ฝ”๋“œ์นดํƒ€' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/JAVA] 29. ์ œ์ผ ์ž‘์€ ์ˆ˜ ์ œ๊ฑฐํ•˜๊ธฐ
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/JAVA] 28. ์—†๋Š” ์ˆซ์ž ๋”ํ•˜๊ธฐ
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/JAVA] 26. ์Œ์–‘ ๋”ํ•˜๊ธฐ
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/JAVA] 25. ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ์ˆซ์ž ๋ฐฐ์—ด
aggeeeee
aggeeeee
ใ€€ φ(๏ผŽ๏ผŽ;)ใ€€๐Ÿ”œใ€€\_ใธ(โ–ญ-โ–ญ)โœจ
  • aggeeeee
    ๐Ÿฅ” ๋‹˜์˜ ๋ธ”๋กœ๊ทธ
    aggeeeee
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (155)
      • Today I Learned (25)
      • ๋‚ด์ผ๋ฐฐ์›€์บ ํ”„ (115)
        • ๋ณธ์บ ํ”„ ๊ณผ์ œ (17)
        • ์‚ฌ์ „์บ ํ”„ ๊ณผ์ œ (23)
        • SQL ์ฝ”๋“œ์นดํƒ€ (44)
        • ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ฝ”๋“œ์นดํƒ€ (31)
      • ๐Ÿ’ป๐Ÿš€ (15)
        • Java (7)
        • Git & GitHub (1)
        • CS (4)
        • Spring & SpringBoot (3)
  • ๋งํฌ

  • ์ตœ๊ทผ ๊ธ€

  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
aggeeeee
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/JAVA] 27. ํ•ธ๋“œํฐ ๋ฒˆํ˜ธ ๊ฐ€๋ฆฌ๊ธฐ
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”