Lv1. 신규 아이디 추천 Javascript
https://programmers.co.kr/learn/courses/30/lessons/72410
function solution(new_id) {
const answer = new_id
.toLowerCase() // 1 : 대문자롤 소문자로 대체
.replace(/[^\w-.]/g, "") // 2 : [^k] k를 제외하고 모두 제거
.replace(/\.{2,}/g, ".") // 3 : .이 2개 이상 반복되면 .으로 대체
.replace(/^\.|\.$/g, "") // 4 : ^\. .으로 시작 + | 또는 + .$ .으로 끝 >> 제거
.replace(/^$/, "a") // 5 : 빈문자열인지 확인
.slice(0, 15) // 6-1 : 15자로 자르기
.replace(/\.$/, ""); // 6-2 : .으로 끝나면 제거
const len = answer.length;
return len > 2 ? answer : answer + answer.charAt(len - 1).repeat(3 - len); // 7
}
정규표현식, toLowerCase, replace, slice, charAt, repeat
padStart(), padEnd()를 통해서 글자수를 맞추고 공백을 채울 수 있음.
const str = "123"; console.log(str.padStart(10, "0")); // "0000000123" console.log(str.padEnd(10, "0")); // "1230000000"
댓글 환영
질문 환영
by.protect-me