프로그래머스 - 신규 아이디 추천[Python]

Stella·2022년 4월 30일
0

Coding Test

목록 보기
29/48
post-custom-banner

신규 아이디 추천

문제
신규 아이디 추천

해결방법

  • 정규식 사용해서 풀이.

Solution

import re
def solution(new_id):
	# 소문자로 변경
    new_id = new_id.lower() 
    # a-z,0-9,-_. 아니면 삭제
    new_id = re.sub('[^a-z0-9\-_.]',"",new_id)
    # .이 1이상이면 .으로 변경
    # new_id = re.sub('[.]{2,}',".",new_id) 이렇게도 가능
    new_id = re.sub('\.+',".",new_id)
    # 맨 앞이나 맨 뒤에 .이 오면 삭제
    new_id = re.sub('^[.]|[.]$',"",new_id)   
    # new_id가 비어있으면 aaa로 변경
    new_id = new_id if new_id else 'aaa'
    
    # new_id 길이가 2 이하면 마지막 문자로 길이 3까지 만들기
    if len(new_id) <= 2:
        while len(new_id)<3:
            new_id+=new_id[-1]
    # new_id길이가 15를 넘으면 자르기, 자르고 난후 마지막 문자가 .이면 삭제
    elif len(new_id) >=16:
        new_id = new_id[:15]
        new_id = re.sub('[.]$',"",new_id)
    return new_id
profile
Hello!
post-custom-banner

0개의 댓글