강의로 돌아가기
donghee

[Java] 정규식 참고요

정규식 어렵네요,,

작성중인 코드―Solution.java
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 = "";

        // 1~5 단계
        answer = new_id.toLowerCase();
        answer = answer.replaceAll("[^\\w\\-_.]*", "");
        answer = answer.replaceAll("\\.{2,}", ".");
        answer = answer.replaceAll("^[.]|[.]$", "");
        answer = answer.length() == 0 ? "a" : answer;

        // 6단계
        if (16 <= answer.length()) answer = answer.substring(0, 15).replaceAll("^[.]|[.]$", "");

        // 7단계
        answer = minLength(answer);

        return answer;
    }

    // 7단계
    private String minLength(String target) {
        // id가 2자 넘으면 반환
        if (2 < target.length()) return target;

        // id 마지막 문자를 끝에 추가
        target += target.charAt(target.length() - 1);

        // 재귀 호출로 위 작업 반복
        return minLength(target);
    }
}
  • 김혜리

    answer = answer.replaceAll("[^a-z\\d\\-_.]*", ""); answer = answer.replaceAll("[.]+","."); 쓰시면 됩니다

    김혜리―2022.06.30 17:57
0 개의 답변
답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.