返されるサブストリング

String クラスの substr() メソッドと substring() メソッドは類似したメソッドです。どちらもストリングのサブストリングを返しますし、どちらもパラメータは 2 つです。どちらのメソッドでも、最初のパラメータは、与えられたストリングの開始文字の位置です。ただし、substr() メソッドの 2 番目のパラメータは返されるサブストリングの長さであり、substring() メソッドの 2 番目のパラメータはサブストリングの末尾の文字の位置です (これは返されるストリングには含まれません)。この例は 2 つのメソッドの相違を示しています。

文字の位置によってサブストリングを見つけるには :

  1. 新しい Flash ドキュメントを作成し、substring.fla という名前を付けて保存します。
  2. メインタイムラインのフレーム 1 に次の ActionScript を追加します。
    var myStr:String = "Hello from Paris, Texas!!!";
    trace(myStr.substr(11,15)); // Paris, Texas!!!
    trace(myStr.substring(11,15)); // Pari
    

    最初のメソッド、substr() は、11 番目の文字から 15 文字を返します。2 番目のメソッド、substring() は、11 番目と 15 番目のインデックス間のすべての文字を取り出し、4 文字のストリングを返します。

  3. 前の手順で作成したコードの下に、次の ActionScript を追加します。
    trace(myStr.slice(11, 15)); // Pari
    trace(myStr.slice(-3, -1)); // !!
    trace(myStr.slice(-3, 26)); // !!!
    trace(myStr.slice(-3, myStr.length)); // !!!
    trace(myStr.slice(-8, -3)); // Texas
    

    slice() メソッドの機能は substring() メソッドと類似しています。2 つの負でない整数をパラメータとして与えた場合、両方のメソッドは完全に同じ働きをします。ただし、slice() メソッドの場合は負の整数をパラメータとして使用できます。

  4. [制御]-[ムービープレビュー] を選択して Flash ドキュメントをテストします。

    メモ

     

    slice() メソッドのパラメータには、負でない整数と負の整数を組み合わせて指定できます。

indexOf() メソッドおよび lastIndexOf() メソッドを使用して、次の例のように、ストリング内で一致するサブストリングを見つけることができます。

一致するサブストリングの文字位置を検索するには :

  1. 新しい Flash ドキュメントを作成し、indexof.fla という名前を付けて保存します。
  2. メインタイムラインのフレーム 1 に次の ActionScript を追加します。
    var myStr:String = "The moon, the stars, the sea, the land";
    trace(myStr.indexOf("the")); // 10
    trace(myStr.indexOf("the", 11)); // 21
    

    indexOf() メソッドでは大文字小文字を区別するため、単語 "the" の最初のインデックスは 10 番目の文字で始まります。そのため、"The" の最初のインスタンスは考慮されません。indexOf() メソッドに 2 番目のパラメータを指定して、検索を開始するストリング内のインデックス位置を指示することもできます。上記のコードでは、Flash は 11 番目の文字以降に出現する単語 "the" の最初のインデックスを検索します。

  3. 前の手順で追加したコードに続けて次の ActionScript を追加します。
    trace(myStr.lastIndexOf("the")); // 30
    trace(myStr.lastIndexOf("the", 29)); // 21
    

    lastIndexOf() メソッドは、ストリング内の最後のサブストリングを検索します。つまり、lastIndexOf() は文字またはサブストリングをストリングの最初から検索するのではなく、ストリングの最後から始めて逆方向へと検索します。indexOf() メソッドと同じように、lastIndexOf() メソッドに 2 番目のパラメータを指定すると、インデックス位置から検索が行われます。ただし、lastIndexOf() の場合は逆方向 (右から左) に検索が行われる点が異なります。

  4. [制御]-[ムービープレビュー] を選択し、Flash ドキュメントをテストします。

    ヒント

     

    indexOf() および lastIndexOf() メソッドでは大文字小文字を区別します。

選択されたストリングとサブストリングを比較および取得する簡単なワードプロセッサを作成する方法を示す、サンプルのソースファイル "strings.fla" については、Flash サンプルページ (www.adobe.com/go/learn_fl_samples_jp) を参照してください。"Samples" zip ファイルをダウンロードし解凍して、"ActionScript2.0/Strings" フォルダに移動してサンプルにアクセスします。


 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート

現在のページ: http://livedocs.adobe.com/flash/9.0_jp/main/00000951.html