728x90
https://programmers.co.kr/learn/courses/30/lessons/72410
문제 풀이
문제에서 요구하는대로 그대로 따라 하면 된다.
정규식을 이용해서 푸는게 깔끔해서 정규식을 이용했다.
느낀 점
파이썬의 큰 매력이 정규식에 있는 것 같다. 코드가 아주 직관적이고 예뻐졌다.
6단계에서 글자의 길이가 16 이상일 때 조건이 있는데 뭐가 되었든 처음부터 15글자를 가져오면 되니
조건을 줄여서 코드를 간략하게 바꾸었다.
파이썬이 아직 많이 미숙한 것 같아서 조만간 기초부터 정리를 해야할 것 같다.
코드
import re
def solution(new_id):
answer = re.sub('[^0-9a-z-_.]', '', new_id.lower())
answer = re.sub('\.{2,}', '.', answer)
if answer[0] == '.': answer = answer[1:]
if answer[-1] == '.': answer = answer[:-1]
answer = 'a' if len(answer) == 0 else answer[:15]
if answer[-1] == '.': answer = answer[:-1]
if len(answer) <= 2: answer = answer + answer[-1] * (3-len(answer))
return answer
'문제 풀이 > 프로그래머스 (Programmers)' 카테고리의 다른 글
[Python] 프로그래머스 : 크레인 인형뽑기 게임 (0) | 2022.06.21 |
---|---|
[Python] 프로그래머스 : 숫자 문자열과 영단어 (0) | 2022.06.21 |
[Python] 프로그래머스 : 신고 결과 받기 (0) | 2022.06.18 |
[C++] 프로그래머스 : 튜플 (0) | 2021.11.08 |
[C++] 프로그래머스 : [1차] 뉴스 클러스터링 (0) | 2021.10.24 |
댓글