_
), 마침표(.
) 문자만 사용할 수 있습니다..
)는 처음과 끝에 사용할 수 없으며 또한 연속으로 사용할 수 없습니다.import re
def solution(new_id):
#1단계 소문자 치환
new_id=new_id.lower()
#2단계 제거
lvl2 = re.compile('[0-9a-z_.\\-]+')
new_id = lvl2.findall(new_id)
new_id = ''.join(new_id)
#3단계 . 압축
while '..' in new_id:
new_id = new_id.replace('..','.')
#4단계 양끝 . 제거
new_id = new_id.strip('.')
#5단계 빈문자열 a 추가
if new_id =='':new_id+='a'
#6단계 15개제외하고 문자모두제거
if len(new_id)>=16:
new_id = new_id[:15]
new_id = new_id.rstrip('.')#6단계 우측 . 제거
#7단계
if len(new_id)<=2:
idSize = len(new_id)
addchar = new_id[idSize-1:]
while len(new_id)<3:
new_id+=addchar
answer = new_id
return answer
solution("...!@BaT#*..y.abcdefghijklm")
'bat.y.abcdefghi'