[Algorithm] 프로그래머스 - 신규 아이디 추천 (Javascript)

swing·2021년 8월 5일
1

[Algorithm]

목록 보기
5/96

풀이

  1. new_id를 정규식을 이용해 대문자 -> 소문자로 치환한다.
  2. 정규식이용 (알파벳소문자),(숫자),(-),(_),(.)를 제외한 모든 문자 제거
  3. new_id를 순회하며 (.)이 나오면 하나의 마침표로 치환
  4. (.)이 문자열 처음 or 끝에 있으면 제거
  5. 빈 문자열이 되었으면 a를 대입
  6. 16자 이상이면, 15자까지 자른다.
  7. 문자열 마지막이 (.)이면 제거한다.
  8. 2자 이하라면, 마지막 문자를 3자가 될 때까지 끝에 붙임.
  9. return answer

코드

function solution(new_id) {
    let answer = new_id;
    answer = answer.toLowerCase();
    answer = answer.replace(/[^a-z\d\-\_\.]/g,"");
    answer = answer.replace(/\.+/g,".");
    answer = answer.replace(/^\.|\.$/g,"");
    
    if(answer === ""){
        answer += "a";
    }
    
    if(answer.length >= 16){
        answer = answer.substring(0,15);
    }
    
    answer = answer.replace(/\.$/g,"");
    
    while(answer.length <= 2){
        answer += answer[answer.length -1]
    }
    return answer
}
profile
if(기록📝) 성장🌱

0개의 댓글