프로그래머스 코딩테스트 연습 <문자열 다루기 기본>

5677 단어 CodingTestCodingTest

🔎 <문자열 다루기 기본>

📝 답안

코딩테스트 연습을 이제 막 시작해 부끄러운 수준의 내 답안과 다른 사람들의 답안을 확인해보자.

🚩 제출한 답안

function solution(s) {
  var answer = true;
  var arr = s.split("");
  for (let i = 0; i < arr.length; i++) {
    if (arr[i].charCodeAt() >= 65) {
      answer = false;
    }
  }
  if (arr.length !== 4 && arr.length !== 6) {
    answer = false;
  }
  return answer;
}

문자열을 분리한 후, 각 문자열의 UTF-16 코드가 65번 이상이면 알파벳이기 때문에 알파벳이 없는 경우 중, 배열의 길이가 4, 6인 경우만 반환한다.

🚩 다른 사람 답안

정규표현식과 regex.test()을 활용한 답안

function alpha_string46(s){
  var regex = /^\d{6}$|^\d{4}$/;
  return regex.test(s);
}
  • ^: 문자열의 시작
  • \d: 숫자, [0-9]와 달리 페르시안 숫자, 아랍 숫자 등을 포함한다.
  • $: 문자열의 종료
  • |: OR을 의미한다.
  • {4}: 4자리

📌 공부할 점

test()

test() 메서드는 주어진 문자열이 정규 표현식을 만족하는지 판별하고, 그 여부를 true 또는 false로 반환한다.

const str = 'hello world!';
const result = /^hello/.test(str);

console.log(result); // true

정규표현식

1) MDN 자료 2) 참고자료

  • ^: 문자열의 시작
  • \d: 숫자, [0-9]와 달리 페르시안 숫자, 아랍 숫자 등을 포함한다.
  • $: 문자열의 종료
  • |: OR을 의미한다.
  • {4}: 4자리

좋은 웹페이지 즐겨찾기