본문 바로가기

Programmers/Level1

신규 아이디 추천

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
class Solution {
    public String solution(String new_id) {
        String answer = "";
        
        new_id = new_id.toLowerCase();
 
        new_id = new_id.replaceAll("[\\~\\!\\@\\#\\$\\%\\^\\&\\*\\(\\)\\=\\+\\[\\{\\]\\}\\:\\?\\,\\<\\>\\/]""");
 
        new_id = new_id.replaceAll("[.]+"".");
 
        new_id = new_id.replaceAll("^[.]|[.]$""");        
 
        if (new_id.length() == 0)
            new_id = "a";
 
        if (new_id.length() >= 16) {
            new_id = new_id.substring(015);
            if (new_id.substring(14).equals("."))
                new_id = new_id.substring(014);
        }
 
        if (new_id.length() <= 2) {
            int start = new_id.length();
            for (int i = start; i < 3; i++)
                new_id = new_id + new_id.substring(start - 1, start);
        }
 
        answer = new_id;
        
        return answer;
    }
}
cs

특수문자 정규 표현식을 처리하는데 유의해야 한다.

'Programmers > Level1' 카테고리의 다른 글

[카카오 인턴] 키패드 누르기  (0) 2021.06.29
약수의 개수와 덧셈  (0) 2021.06.29
모의고사  (0) 2021.06.28
소수 만들기  (0) 2021.06.24
K번째수  (0) 2021.06.24