[アルゴリズム/Programmers]文字列基本

5334 ワード


問題の説明


文字列sの長さが4または6であり、数値のみからなる関数であることを確認し、解を完了してください.たとえば、sがa 234であればFalse、1234であればTrueを返します.

せいげんじょうけん

  • sは、長さが1より大きく、長さが8より小さい文字列である.
  • I/O例



    説明する

    function solution(s) {
        var answer = false; // 기본값은 false로 지정한다
        let newS = s.split(''); // 문자열들을 배열로 나눈 뒤
        
        if(s.length === 4 || s.length === 6){ // 만약 4글자이거나 6글자라면
           for(let i = 0; i<newS.length; i++){ // 배열의 length만큼 for문을 돈다
               if(isNaN(newS[i]/1)){ // 배열의 값이 isNaN 이라면 
                   return false; // false를 return 하고
               } 
           } answer = true; // return 하지 않고 for문이 끝났다면 answer은 true를 담는다
        }
        return answer; // answer을 return한다.
    }

    人の怒りを晴らす

    function alpha_string46(s){
      var regex = /^\d{6}$|^\d{4}$/;  // 정규식표현을 변수에 담고
      return regex.test(s); // 그 변수에 test메서드로 true/false 반환
    }

    理解(1)


    isNaN
    isNaN()関数は、NaN MDNドキュメントリンクの値を決定します。
    コンソールでisnanという値を撮ってみましたが、その値はtrueとflaseではありません.
    他のタイプは確認できますが、これはどうしてだめですか?何を間違えたの?と思います.
    この時になってやっと検索してisnanという関数を見つけて使い始めました.
    やはり知らないのは検索が答えで、私の知らない関数はまだたくさんあります...
    理解すると,最終的には多くの有用な関数が発見され,ソルバによって多くのことが理解される.
    .test()
    test()メソッドは、指定された文字列が正規表現を満たすかどうかを決定し、trueまたはfalse MDNドキュメントリンクを返します。
    他人が正規の方法で解いた問題を見るtestという方法を探すことで,新しい方法を理解した.
    正規の儀式で、以前勉強していた部分を改めて説明しました.
    DREAMコードALLYのビデオを見て勉強!
    /^\d { 6 } $ | ^\d { 4 } $/
    正規表現解析/~/~で^文の先頭{min,}が最小,{6}/{4}ddigit数字$文の末尾|または
    説明するのも難しい😅