部分文字列のインデックス

JavaScriptJavaScriptBeginner
今すぐ練習

This tutorial is from open-source community. Access the source code

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

この実験では、JavaScript プログラミング言語の基本を学びます。JavaScript の基本構文、データ型、関数、制御構造を学びます。実験が終了するまでに、JavaScript を使って簡単なプログラムを書けるようになり、この言語をしっかり理解できるようになります。この実験は、プログラミングや JavaScript の経験のない初心者を対象に設計されています。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/AdvancedConceptsGroup(["Advanced Concepts"]) javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic Concepts"]) javascript/BasicConceptsGroup -.-> javascript/variables("Variables") javascript/BasicConceptsGroup -.-> javascript/data_types("Data Types") javascript/BasicConceptsGroup -.-> javascript/arith_ops("Arithmetic Operators") javascript/BasicConceptsGroup -.-> javascript/comp_ops("Comparison Operators") javascript/BasicConceptsGroup -.-> javascript/cond_stmts("Conditional Statements") javascript/BasicConceptsGroup -.-> javascript/loops("Loops") javascript/AdvancedConceptsGroup -.-> javascript/spread_rest("Spread and Rest Operators") subgraph Lab Skills javascript/variables -.-> lab-28389{{"部分文字列のインデックス"}} javascript/data_types -.-> lab-28389{{"部分文字列のインデックス"}} javascript/arith_ops -.-> lab-28389{{"部分文字列のインデックス"}} javascript/comp_ops -.-> lab-28389{{"部分文字列のインデックス"}} javascript/cond_stmts -.-> lab-28389{{"部分文字列のインデックス"}} javascript/loops -.-> lab-28389{{"部分文字列のインデックス"}} javascript/spread_rest -.-> lab-28389{{"部分文字列のインデックス"}} end

部分文字列のインデックス

与えられた文字列内の部分文字列のすべてのインデックスを見つけるには、次の手順に従います。

  1. ターミナル/SSH を開き、コーディングを練習するために node と入力します。
  2. 組み込みメソッド Array.prototype.indexOf() を使用して、str 内の searchValue を検索します。
  3. 値が見つかった場合、インデックスを返してインデックス i を更新するために yield を使用します。
  4. Array.prototype.indexOf() から返される値が -1 になったときにジェネレータを終了する while ループを使用します。

上記の手順を実装するためのサンプルコードは次のとおりです。

const indexOfSubstrings = function* (str, searchValue) {
  let i = 0;
  while (true) {
    const r = str.indexOf(searchValue, i);
    if (r !== -1) {
      yield r;
      i = r + 1;
    } else return;
  }
};

次のコードで関数をテストできます。

[...indexOfSubstrings("tiktok tok tok tik tok tik", "tik")]; // [0, 15, 23]
[...indexOfSubstrings("tutut tut tut", "tut")]; // [0, 2, 6, 10]
[...indexOfSubstrings("hello", "hi")]; // []

まとめ

おめでとうございます!あなたは部分文字列のインデックスの実験を完了しました。あなたのスキルを向上させるために、LabExでさらに実験を行って練習できます。