JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

【JavaScript】lastIndexOf()メソッドで文字列内の指定値が最後に出現する位置を取得する方法

JavaScriptのlastIndexOf()メソッドを使うと、文字列(Stringオブジェクト)の中から指定した値が最後に出現する位置(インデックス)を取得できます。検索は第2引数fromIndexで指定した位置から開始され、値が見つからなかった場合は「-1」が返されます。

構文

lastIndexOf()メソッドの基本構文は以下のとおりです。

string.lastIndexOf(searchValue[, fromIndex])

パラメータ

  • searchValue:検索したい値を表す文字列を指定します。
  • fromIndex:検索を開始する位置を指定します。0から文字列の長さまでの任意の整数を指定でき、デフォルト値は0です。この引数は省略可能です。

なお、fromIndexに文字列の長さ以上の値を指定した場合は文字列全体が検索対象となり、負の値を指定した場合は0として扱われます。

使用例

以下のコードを実行すると、文字列内で指定した値が最後に出現するインデックスを取得する方法を実際に確認できます。

<html>
  <head>
    <title>JavaScript String lastIndexOf() Method</title>
  </head>

  <body>
    <script>
      var str1 = new String( "Learn for free and enjoy! Learn and share!" );
      var index = str1.lastIndexOf( "Learn" );
      document.write("lastIndexOf found String :" + index );
      document.write("<br />");
      var index = str1.lastIndexOf( "and" );
      document.write("lastIndexOf found String :" + index );
    </script>
  </body>
</html>

この例では、「Learn for free and enjoy! Learn and share!」という文字列に対して検索を行っています。「Learn」は2箇所に出現しますが、lastIndexOf()は最後の出現位置である「26」を返します。同様に「and」を検索した場合も、最初ではなく最後に出現する位置「32」が返されます。

先頭からの出現位置を取得したい場合はindexOf()メソッドを使用し、末尾側の出現位置が必要な場合にlastIndexOf()を使うと覚えておくと便利です。

  1. 【JavaScript】ドキュメント全体のHTMLを文字列として取得する方法を解説

    Webページのソースコード全体を取得して処理したい場面は、デバッグや動的なコンテンツ操作など、JavaScript開発では意外と多くあります。この記事では、ドキュメント全体のHTMLを文字列として取得する方法を、具体的なコード例とともにわかりやすく解説します。 innerHTMLプロパティを使った取得方法 ドキュメント全体のHTMLを文字列として取得するには、document.documentElementのinnerHTMLプロパティを利用します。 document.documentElement.innerHTML; document.documentElementはHTML文書のルート要

  2. JavaScriptで文字列内の特定の文字列の出現回数をカウントする方法

    JavaScriptでは、ある文字列(str1)の中に、別の文字列(str2)が何回出現するかを数えたいケースはよくあります。本記事では、2つの文字列を受け取り、str2がstr1の中に現れる回数をカウントして返す関数の実装方法を解説します。要件の確認まず、期待する動作を例で確認しましょう。count(this is a string, is) → 2 を返すこの例では、「this is a string」という文字列の中に「is」が2回含まれているため、結果として 2 が返されます。実装コード以下が実際のコードです。const str1 = this is a string;const st