풀이
파이썬의 정규표현식을 이용해서 문제에서의 2단계와 3단계를 쉽게 해결하여 풀 수 있었습니다.
파이썬은 공부하면 공부할수록 문제를 더 쉽게(?)풀 수 있는 매력적인 언어같습니다
코드
import re
def solution(new_id):
answer = ''
# 알아서 알파벳만 소문자로 바꾸어 준다.
# 1단계
new_id = new_id.lower()
# 2단계
new_id = re.sub('[^a-z0-9-_.]', '', new_id)
# 3단계
new_id = re.sub('\.+', '.', new_id)
# 4단계
new_id = new_id.strip('.')
# 5단계
if not new_id :
new_id = 'a'
# 6단계
if len(new_id) > 15:
new_id = new_id[:15]
new_id = new_id.strip('.')
# 7단계
if len(new_id) <= 2:
c = new_id[-1]
while len(new_id) < 3:
new_id += c
return new_id
'알고리즘 > 프로그래머스' 카테고리의 다른 글
[Python] 체육복 (0) | 2021.02.13 |
---|---|
[Python] 모의고사 (0) | 2021.02.12 |
[Python] 완주하지 못한 선수 (0) | 2021.02.07 |
[Python] 두 개 뽑아서 더하기 (0) | 2021.01.30 |
[Python] 크레인 인형뽑기 게임 (0) | 2021.01.28 |