문제링크
https://programmers.co.kr/learn/courses/30/lessons/72410
내풀이
import re
def solution(new_id):
s = new_id[:]
# 1
s = s.lower()
# 2
s = re.sub("[^a-z0-9-_.]","",s)
# 3
s = re.sub("\.+",".",s)
# 4
s = re.sub("^\.|\.$","",s)
# 5
if s == "": s = "a"
# 6-1
if len(s) >= 16: s = s[:15]
# 6-2
s = re.sub("\.$","",s)
# 7
while len(s) < 3: s = s + s[-1]
return s
피드백
정규식 표현 유용노트에 정리(다른 블로그 스크랩 했음)
'코딩 문제 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 키패드 누르기 (python) (0) | 2022.05.06 |
---|---|
[프로그래머스] 숫자 문자열과 영단어 (python) (0) | 2022.05.06 |
[프로그래머스] 신고 결과 받기 (python) (0) | 2022.05.05 |
[프로그래머스] 순위 (python) (0) | 2022.02.08 |
[프로그래머스] 가장 먼 노드 (python) (0) | 2022.02.05 |