728x90
차근차근 풀면 되는 문자열 문제입니다. indexing 전에 빈 문자열이 되었는지 체크하는 것을 잊지 말도록 합시다.
import re
def solution(new_id):
tmp = new_id
# 1
tmp = tmp.lower()
# 2
tmp = re.sub("[^a-z0-9_\-.]", "", tmp)
# 3
tmp = re.sub("\.{2,}", ".", tmp)
# 4
if tmp == '':
tmp = 'a'
if tmp[0] == '.':
tmp = tmp[1:]
if tmp == '':
tmp = 'a'
if tmp[-1] == '.':
tmp = tmp[:len(tmp)-1]
# 5
if tmp == '':
tmp = 'a'
# 6
if len(tmp) >= 16:
tmp = tmp[:15]
if tmp[-1] == '.':
tmp = tmp[:len(tmp)-1]
#7
if len(tmp) <= 2:
tmp += tmp[-1]*(3-len(tmp))
return tmp
# 반례
solution("=.=")
'PS > Python' 카테고리의 다른 글
[Programmers] 위클리 챌린지 8주차_최소직사각형 (0) | 2021.09.29 |
---|---|
[BOJ] 14503 - 로봇 청소기 (0) | 2021.09.18 |
[Programmers] 숫자 문자열과 영단어 (0) | 2021.09.18 |
[Programmers] 모의고사 (0) | 2021.09.18 |
[BOJ_Python] 2644. 촌수계산 (0) | 2021.04.17 |
최근댓글