no new_id result
예1 "...!@BaT#*..y.abcdefghijklm" "bat.y.abcdefghi"
예2 "z-+.^." "z--"
예3 "=.=" "aaa"
예4 "123_.def" "123_.def"
예5 "abcdefghijklmn.p" "abcdefghijklmn"
def solution(new_id):
stopword = "~!@#$%^&*()=+[{]}:?,<>/"
# 1단계
tmp = list(new_id.lower())
# 2단계
tmp2 = [data for data in tmp if data not in stopword]
# 3단계
answer = []
tmp4 = 0
for i in tmp2:
if i == '.': tmp4 += 1
else:
if tmp4 > 0:
answer.append('.')
answer.append(i)
else:
answer.append(i)
tmp4 = 0
# 4단계
if answer and answer[0] == '.': del answer[0]
if answer and answer[-1] == '.': del answer[-1]
# 5단계
if not answer:
answer.append('a')
# 6단계
if len(answer) >= 16: answer = answer[:15]
if answer[-1] == '.': del answer[-1]
# 7단계
while(len(answer)<=2):
answer.append(answer[-1])
return "".join(answer)