본문 바로가기
Programmers

프로그래머스 1단계 : 문자열 다루기 기본

by 코파카 2022. 11. 22.
728x90

프로그래머스 1단계 : 문자열 다루기 기본

코딩테스트 연습 > 연습문제 > 문자열 다루기 기본


💩 문제 설명

문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.

💩 제한 조건

☝️ s는 길이 1 이상, 길이 8 이하인 문자열입니다.
✌ s는 영문 알파벳 대소문자 또는 0부터 9까지 숫자로 이루어져 있습니다.

💩 문제 풀이

function solution(s) {
    if(s.length == 4 || s.length == 6){
        if(s.indexOf("e") !== -1 ){
            return false;
        } else if(s / 1 == s){
            return true;
        } else { return false; }
    } 
    else { return false; }
}

if문을 사용하여 걸러 주었습니다. 처음에 케이스 1문제에서만 자꾸 실패하길래 너무 화가 났지만 결국 자존심을 굽히고 힌트를 봤습니다. 자바스크립트는 지수 표기법을 지원하기 때문에 e를 숫자로 판별한다고 합니다. 그래서 문자열 s 안에 알파벳 e가 들어가는 경우에는 무조건 false를 출력하도록 작성해 주었습니다. 기분 나쁘지만 그래도 9점 받아서 좋네요.

💩 다른 풀이

function alpha_string46(s){
    var regex = /^\d{6}$|^\d{4}$/;
    return regex.test(s);
  }

정규식 달인의 코드를 가져와봤습니다. return에서, 문자열 s가 정규식(regex)과 매칭되면 true, 아니라면 false를 반환한다고 합니다. 멋지네요.

728x90

댓글

감사합니다. 🦙

CSS
광고 준비중