[알고리즘]신규아이디추천

성준영·2022년 7월 2일
0

자세한 문제 설명은 아래 링크를 참조하세요
링크

전체 코드

function solution(new_id) {
  var answer = new_id;

  answer = answer.toLowerCase(); // 1

  answer = answer.replace(/[^a-z0-9._-]/g, ""); // 2;

  answer = answer.replace(/\.{2,}/g, "."); //3

  answer = answer.replace(/^\.|\.$/g, ""); // 4

  if (answer === "") {
    answer += "a";
  } // 5

  if (answer.length >= 16) {
    answer = answer.slice(0, 15).replace(/\.$/g, "");
  } // 6

  if (answer.length <= 2) {
    const last = answer.substr(-1);
    while (answer.length <= 2) {
      answer += last;
    }
  } // 7

  return answer;
}

console.log(solution("...!@BaT#*..y.abcdefghijklm"));

이 문제를 보자마자 정규 표현식으로 풀어야겠다는 생각이 들었다
하지만 정규 표현식에 대한 공부가 부족한 상태였기 때문에 구글링을 하면서 풀었다 다음에 한 번 더 풀어봐야겠다

정규 표현식 연습해 볼 수 있는 사이트
링크

profile
기록해버리기

0개의 댓글