JSチュートリアル

JSホーム JSの紹介 JSどこへ JS出力 JSステートメント JS構文 JSコメント JS変数 JS Let JSConst JSオペレーター JS算術 JS割り当て JSデータ型 JS関数 JSオブジェクト JSイベント JS文字列 JS文字列メソッド JS文字列検索 JS文字列テンプレート JS番号 JS番号メソッド JSアレイ JS配列メソッド JS配列ソート JSアレイの反復 JSアレイ定数 JSの日付 JSの日付形式 JS DateGetメソッド JS日付設定メソッド JS数学 JSランダム JSブール値 JSの比較 JS条件 JSスイッチ JSループFor JSループフォーイン JSループの JSループWhile JSブレイク JSIterables JSセット JSマップ JS Typeof JS型変換 JSビット単位 JS RegExp JSエラー JSスコープ JSホイスト JS厳密モード JSこのキーワード JSアロー関数 JSクラス JS JSON JSデバッグ JSスタイルガイド JSのベストプラクティス JSの間違い JSパフォーマンス JS予約語

JSバージョン

JSバージョン JS 2009(ES5) JS 2015(ES6) JS 2016 JS 2017 JS 2018 JS IE /エッジ JSの歴史

JSオブジェクト

オブジェクト定義 オブジェクトのプロパティ オブジェクトメソッド オブジェクト表示 オブジェクトアクセサー オブジェクトコンストラクター オブジェクトのプロトタイプ オブジェクト反復可能 オブジェクトセット オブジェクトマップ オブジェクトリファレンス

JS関数

関数の定義 関数パラメーター 関数の呼び出し 関数呼び出し 機能適用 関数クロージャ

JSクラス

クラスイントロ クラス継承 クラス静的

JS非同期

JSコールバック JS非同期 JSの約束 JS Async / Await

JS HTML DOM

DOMイントロ DOMメソッド DOMドキュメント DOM要素 DOM HTML DOMフォーム DOM CSS DOMアニメーション DOMイベント DOMイベントリスナー DOMナビゲーション DOMノード DOMコレクション DOMノードリスト

JSブラウザBOM

JSウィンドウ JS画面 JSロケーション JSの歴史 JSナビゲーター JSポップアップアラート JSタイミング JSクッキー

JS Web API

WebAPIイントロ WebフォームAPI Web履歴API WebストレージAPI WebワーカーAPI Web Fetch API Web Geolocation API

JS AJAX

AJAXイントロ AJAX XMLHttp AJAXリクエスト AJAX応答 AJAXXMLファイル AJAX PHP AJAX ASP AJAXデータベース AJAXアプリケーション AJAXの例

JS JSON

JSONイントロ JSON構文 JSONとXML JSONデータ型 JSON解析 JSON文字列化 JSONオブジェクト JSON配列 JSONサーバー JSON PHP JSON HTML JSON JSONP

JSとjQuery

jQueryセレクター jQuery HTML jQuery CSS jQuery DOM

JSグラフィックス

JSグラフィックス JSキャンバス JSPlotly JS Chart.js JSグーグルチャート JS D3.js

JSの例

JSの例 JS HTML DOM JSHTML入力 JSHTMLオブジェクト JSHTMLイベント JSブラウザ JSエディター JS演習 JSクイズ JS証明書

JSリファレンス

JavaScriptオブジェクト HTMLDOMオブジェクト


JavaScript文字列検索

JavaScriptの検索メソッド

  • 文字列indexOf()
  • 文字列lastIndexOf()
  • 文字列startsWith()
  • 文字列endsWith()

JavaScript文字列indexOf()

このindexOf()メソッドはfirst、文字列内の指定されたテキストの出現のインデックス(の位置)を返します。

let str = "Please locate where 'locate' occurs!";
str.indexOf("locate");

ノート

JavaScriptはゼロから位置をカウントします。

0は文字列の最初の位置、1は2番目、2は3番目、..。


JavaScript文字列lastIndexOf()

このlastIndexOf()メソッドは、文字列内の指定されたテキストの最後の 出現のインデックスを返します。

let str = "Please locate where 'locate' occurs!";
str.lastIndexOf("locate");

両方indexOf()、およびlastIndexOf()テキストが見つからない場合は-1を返します。

let str = "Please locate where 'locate' occurs!";
str.lastIndexOf("John");

どちらの方法も、検索の開始位置として2番目のパラメーターを受け入れます。

let str = "Please locate where 'locate' occurs!";
str.indexOf("locate", 15);

lastIndexOf()メソッドは逆方向(最後から最初まで)に検索します。つまり、2番目のパラメーターが。の場合15、検索は位置15から開始され、文字列の先頭まで検索されます。

let str = "Please locate where 'locate' occurs!";
str.lastIndexOf("locate", 15);

JavaScript文字列search()

このsearch()メソッドは、指定された値の文字列を検索し、一致する位置を返します。

let str = "Please locate where 'locate' occurs!";
str.search("locate");

気づきましたか?

2つのメソッドindexOf()search()等しいですか?

それらは同じ引数(パラメーター)を受け入れ、同じ値を返しますか?

2つの方法は等しくありません。違いは次のとおりです。

  • このsearch()メソッドは、2番目の開始位置引数を取ることができません。
  • このindexOf()メソッドは、強力な検索値(正規表現)を取得できません。

正規表現については、後の章で詳しく説明します。



JavaScript文字列match()

match()メソッドは、文字列で正規表現との一致を検索し、一致をArrayオブジェクトとして返します。

例1

文字列で「ain」を検索します。

let text = "The rain in SPAIN stays mainly in the plain";
text.match(/ain/g);

正規表現の詳細については、JSRegExpの章を参照してください。

ノート

正規表現にg修飾子が含まれていない場合(グローバル検索を実行するため)、match()メソッドは文字列の最初の一致のみを返します。

構文

string.match(regexp)
regexp Required. The value to search for, as a regular expression.
Returns: An Array, containing the matches, one item for each match, or null if no match is found

例2

「ain」のグローバルで大文字と小文字を区別しない検索を実行します。

let text = "The rain in SPAIN stays mainly in the plain";
text.match(/ain/gi);

JavaScript文字列includes()

includes()文字列に指定された値が含まれている場合、メソッドはtrueを返します

let text = "Hello world, welcome to the universe.";
text.includes("world");

構文

string.includes(searchvalue, start)
searchvalue Required. The string to search for
start Optional. Default 0. Position to start the search
Returns: Returns true if the string contains the value, otherwise false
JS Version: ES6 (2015)

文字列に「world」が含まれているかどうかを確認し、12番目の位置から検索を開始します。

let text = "Hello world, welcome to the universe.";
text.includes("world", 12);

ブラウザのサポート

includes()ES6の機能(JavaScript 2015)です。

最新のすべてのブラウザでサポートされています。

Chrome Edge Firefox Safari Opera
Yes Yes Yes Yes Yes

includes()InternetExplorerではサポートされていません。


JavaScript文字列startsWith()

文字列が指定された値で始まる場合、メソッドは戻ります。それ以外の場合は、startsWith()のようになりますtruefalse

let text = "Hello world, welcome to the universe.";

text.startsWith("Hello");

構文

string.startsWith(searchvalue, start)

パラメータ値

Parameter Description
searchvalue Required. The value to search for.
start Optional. Default 0. The position to start the search.

let text = "Hello world, welcome to the universe.";

text.startsWith("world")    // Returns false
let text = "Hello world, welcome to the universe.";

text.startsWith("world", 5)    // Returns false
let text = "Hello world, welcome to the universe.";

text.startsWith("world", 6)    // Returns true

ノート

このstartsWith()方法では大文字と小文字が区別されます。


ブラウザのサポート

startsWith()ES6の機能(JavaScript 2015)です。

最新のすべてのブラウザでサポートされています。

Chrome Edge Firefox Safari Opera
Yes Yes Yes Yes Yes

startsWith()InternetExplorerではサポートされていません。


JavaScript文字列endsWith()

文字列が指定された値で終了する場合、メソッドは戻ります。それ以外の場合は、endsWith()のようになりますtruefalse

文字列が「Doe」で終わっているかどうかを確認します。

var text = "John Doe";
text.endsWith("Doe");

構文

string.endswith(searchvalue, length)

パラメータ値

Parameter Description
searchvalue Required. The value to search for.
length Optional. The length to search.

文字列の最初の11文字が「world」で終わっていることを確認してください。

let text = "Hello world, welcome to the universe.";
text.endsWith("world", 11);

ノート

このendsWith()方法では大文字と小文字が区別されます。


ブラウザのサポート

endsWith()ES6の機能(JavaScript 2015)です。

最新のすべてのブラウザでサポートされています。

Chrome Edge Firefox Safari Opera
Yes Yes Yes Yes Yes

endsWith()InternetExplorerではサポートされていません。


完全な文字列リファレンス

完全な文字列リファレンスについては、次のURLにアクセスしてください。

完全なJavaScript文字列リファレンス

このリファレンスには、すべての文字列プロパティとメソッドの説明と例が含まれています。