abcde(1)11111#111111#211#3abcde(2)111こ

Writer: admin Type: 友人関係の悩み Date: 2019-03-06 00:00
abcde(1)11111#111111#211#3abcde(2)111このようなデータがあるときif式でaが先頭に来たら次の行を読みこみ、読み込んだ行(#1)の文字数をカウントし、次の行(#2)の文字数もカウント、その次の行(#3)で空白を認識したらストップというコードを作りたいです。(1)であれば12、(2)であれば3といった感じですよろしくお願いいたしますこの質問は、活躍中のチエリアン・専門家に回答をリクエストしました。###countChar関数として作ってみました。aが先頭に来たら、次の行から文字数カウントを開始し(#1と#2と#3の行をカウント)、空白を認識したら(#4で)ストップという動作です。//// ご希望の動作をする関数。カウントした結果を返す。//function countChar(text){// 文字数を数える変数var count=0;// 先頭に'a'がきたらその次の行から文字を数え始めるための変数var start=false;// textを行ごとに分割して、配列にする。それをline変数に入れるvar line = text.split("\n");// 行ごとに文字数を数えるfor(var i=0; i<line.length; i++){if(start){ // 空行になるまで、 if(line[i]==0){ start=false; break; }else{ count += line[i].length; // 行の文字数をcountに加算する }}else{ // 先頭に'a'がきたら(次の行から)数え始める if(line[i].indexOf('a')==0){ start=true; }}}return count;}// 元になるテキストその1var text1 = `abcde111111111111`;// 元になるテキストその2var text2 = `abcde111`;// 動作確認alert( countChar(text1) ); // 12alert( countChar(text2) ); // 3ナイス0
###ありがとうございます

 

TAG