[アルゴリズム]新しいアイデンティティを推奨|プログラマー
6145 ワード
問題の説明
指定された文字列をルールに変換
1.大文字->小文字
2.小文字、数字、「」、「.」、「-」除外文字の削除
3. ..->.
4.先頭と末尾にあります.削除
5.空の文字列="a"
6.最大15文字
16文字以上の場合は、最初の15文字以外の文字を削除します.
削除後は末尾にあります.削除
7.長さが2未満の場合、最後の文字を長さが3の場合まで追加
🎇 マイソリューション
def solution(new_id):
answer = ''
# 1. 대문자 -> 소문자
new_id = new_id.lower()
# 2. 소문자, 숫자, _, ., - 제외한 문자 제거
for char in new_id :
if char.isalnum() or char in '_.-':
answer += char
# 3. .. -> .
while '..' in answer : # 🔑'..'이 존재하지 않을 때까지 제거
answer = answer.replace('..','.')
# 4. 처음, 끝에 위치한 . 제거
answer= answer.strip('.')
# 5. 빈문자열 = 'a'
answer = 'a' if answer == '' else answer
# 6. 최대 길이 15자, 끝에 위치한 . 제거
if len(answer) > 15:
answer = answer[:15]
answer = answer.rstrip('.')
# 7. 길이 2 이하인 경우 3이 될때까지 맨 마지막 글자 추가
answer += answer[-1]*(3-len(answer))
return answer
🔑 文字列から特定の文字を削除します。
text = 'aaa'
text = text.replace('a','')
print(text) # 'aaa' -> ''
# .과 &을 제외한 특수문자들을 지워야할 때
text = '=ab.,d&='
answer =''
for char in text :
if char.isalnum() or word in '.&':
answer += char
print(answer) # ='ab.,d&=' -> 'ab.d&'
🔑 文字列関連関数
:先頭から末尾まで、指定した文字列に一致する文字列
:文字が数字またはアルファベットの場合は、True
:小文字に変換
Reference
この問題について([アルゴリズム]新しいアイデンティティを推奨|プログラマー), 我々は、より多くの情報をここで見つけました https://velog.io/@yeonhee-7935/Algorithm-신규-아이디-추천-프로그래머스テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol