5단계에서는 빈 문자열일 경우 “a”를 대입합니다. 이는 간단하게 다음과 같이 작성됩니다.
if (newId.isEmpty()) newId = "a";
6단계에서는 길이가 16자 이상이면 앞 15개의 문자만 남기고, 문자열이 .으로 끝난다면 이를 제거해야 합니다. 앞 15개의 문자를 남기는 것은 String 클래스의 substring() 메서드로 구현 가능하고, 문자열의 마지막 .을 제거하는 것은 + 패턴과 $ 패턴으로 찾아낼 수 있습니다.
if (newId.length() >= 16) {
newId = newId.substring(0, 15);
newId = newId.replaceAll("\\.+$", "");
}
마지막 7단계에서는 문자열 길이가 3 이상이 될 때까지 마지막 문자를 이어 붙여 줍니다.
while (newId.length() < 3) {
newId += newId.charAt(newId.length() - 1);
}