알고리즘 PS
[Python] 2021 카카오 기출 - 신규 아이디 추천
on_doing
2021. 2. 2. 21:25
728x90
programmers.co.kr/learn/courses/30/lessons/72410
코딩테스트 연습 - 신규 아이디 추천
카카오에 입사한 신입 개발자 네오는 카카오계정개발팀에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. 네오에게 주어진 첫 업무는 새로 가
programmers.co.kr
[문제 접근]
- 파이썬의 정규표현식 re를 이용해서 각 단계를 하나씩 한줄로 구현
[알고리즘]
- 문자열 처리 (구현)
[코드]
import re
def solution(new_id):
answer = ''
i=0
#1단계
new_id=new_id.lower()
#2단계
new_id=re.sub("[^0-9a-z_.-]","",new_id)
#3단계
new_id=re.sub("[.]{2,}",".",new_id)
#4단계
new_id=re.sub("^[.]","",new_id)
new_id=re.sub("[.]$","",new_id)
#5단계
if len(new_id)==0:
new_id+='a'
#6단계
if len(new_id)>=16:
new_id=new_id[0:15]
new_id=re.sub("[.]$","",new_id)
#7단계
if len(new_id)<=2 and len(new_id)>0:
new_id=new_id+new_id[-1]*(3-len(new_id))
return new_id
728x90