풀이
class Solution {
public String solution(String new_id) {
String answer = "";
String pattern = "[^-_.0-9a-z]";
int check = 1;
new_id = new_id.toLowerCase(); // 1단계
new_id = new_id.replaceAll(pattern, ""); // 2단계
while(check != 0){ // 3단계
check = 0;
if(new_id.contains("..")){
new_id = new_id.replace("..", ".");
check = 1;
}
}
if(new_id.startsWith(".")){ // 4단계 : 처음에 .으로 시작
new_id = new_id.substring(1, new_id.length());
}
if(new_id.endsWith(".")){ // 4단계 : 마지막에 .로 끝
new_id = new_id.substring(0, new_id.length()-1);
}
if("".equals(new_id)){ // 5단계
new_id = "a";
}
if(new_id.length() > 15){ // 6단계
new_id = new_id.substring(0, 15);
}
if(new_id.startsWith(".")){ // 4단계 : 처음에 .으로 시작
new_id = new_id.substring(1, new_id.length());
}
if(new_id.endsWith(".")){ // 4단계 : 마지막에 .로 끝
new_id = new_id.substring(0, new_id.length()-1);
}
while(new_id.length() < 3){ // 7단계
String str = new_id.substring(new_id.length()-1, new_id.length());
new_id += str;
}
answer = new_id;
return answer;
}
}
결과
'코딩 문제 > 프로그래머스' 카테고리의 다른 글
프로그래머스 - 코딩테스트 - Level1 - 체육복 (0) | 2021.02.22 |
---|---|
프로그래머스 - 코딩테스트 - Level1 - 모의고사 (0) | 2021.02.22 |
프로그래머스 - 코딩테스트 - Level1 - 완주하지 못한 선수 (0) | 2021.02.22 |
프로그래머스 - 코딩테스트 - Level1 - 크레인 인형뽑기 게임 (0) | 2021.02.22 |
프로그래머스 - 코딩테스트 - Level1 - 두 개 뽑아서 더하기 (0) | 2021.02.22 |