프로그래머스[Level 1] 신규 아이디 추천 (정규식)

bkboy·2022년 6월 24일
0

문제 링크

풀이

function solution(new_id) {
  //1
  new_id = new_id.toLowerCase();
  //2
  // [^] 이렇게 사용하면 []에 있는게 아닌건 없앤다는 뜻
  // \w는 그냥문자
  new_id = new_id.replace(/[^\w-_.]/g, "");
  //3
  // 는 반복되는 패턴을 지워줌
  new_id = new_id.replace(/[.]+/g, ".");
  // 4
  // ^ 문자열의 시작, $ 문자열의 끝
  // | 또는
  new_id = new_id.replace(/^\.|\.$/g, "");
  // 5
  if (new_id.length === 0) {
    new_id += "a";
  }
  // 6
  new_id = new_id.slice(0, 15);
  new_id = new_id.replace(/\.$/g, "");
  // 7
  while (new_id.length <= 2) {
    new_id += new_id[new_id.length - 1];
  }
  return new_id;
}

정규식을 공부한다는 생각으로 접근했다.
참고할만한 사이트 몇개를 첨부하려고 한다.

링크1

링크2

링크3

profile
음악하는 개발자

0개의 댓글