반응형
programmers.co.kr/learn/courses/30/lessons/72410
코딩테스트 연습 - 신규 아이디 추천
카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로
programmers.co.kr
import re
def solution(new_id):
new_id = re.sub(r'[~!@#$%^&*()=+\[{\]}:?,<>/]', '', new_id.lower())
new_id = re.sub(r'\.+', '.', new_id)
new_id = re.sub(r'^\.|\.$', '', new_id)
if new_id == '': new_id = 'a'
if len(new_id) > 15: new_id = new_id[:15]
new_id = re.sub(r'^\.|\.$', '', new_id)
if len(new_id) < 3: new_id += new_id[-1] * (3 - len(new_id))
return new_id
→ 문제에 주어진 처리 순서 그대로 정규표현식으로 표현하면 됨
반응형