[프로그래머스] - Level1 신규 아이디 추천

YS C·2021년 11월 7일
0
post-custom-banner

문제링크

생각한 부분

  1. 단계가 7개나 된다... 하나하나 해결하자...
  2. 전체적으로 적용되는 규칙이 3가지 있다! 빠트리지 말고 확인하자!
  3. 정규표현식 공부하자...!

내가 쓴 코드

function solution(new_id) {
  let answer = ''
  answer = new_id
    .toLowerCase()
    .replace(/[^a-z0-9-_.]/g, "")
    .replace(/\.{2,}/g, ".")
    .replace(/^\./g, "")
    .replace(/\.$/g, "")
  if (answer.length === 0) answer = "a"
  if (answer.length >= 16) answer = answer.substring(0, 15)
  answer = answer.replace(/\.$/g, "") // 위에서 한 번 처리 했다고 안해주면 규칙에서 어긋난다 !
  
  while (answer.length <= 2) {
    answer = answer + answer[answer.length - 1]
  }
  return answer
}
post-custom-banner

0개의 댓글