Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Node.js24.x】String::search()メソッドの使い方

searchメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

searchメソッドは、呼び出し元の文字列内で指定された正規表現に一致する部分文字列を検索し、その開始インデックスを返すメソッドです。このメソッドは引数として正規表現オブジェクト、または正規表現を表す文字列を受け取ります。文字列として引数が渡された場合、それは暗黙的にnew RegExp()コンストラクタによって正規表現オブジェクトに変換されてから検索処理が行われます。

文字列を検索し、最初に一致した部分文字列が見つかった場合、その部分文字列の開始位置を示すゼロベースのインデックスを返します。例えば、文字列の3番目の文字から一致が見つかれば 2 が返されます。もし文字列内に一致する部分が見つからなかった場合、このメソッドは −1 を返します。

正規表現にグローバルフラグ(g)が指定されていても、searchメソッドは最初の出現のみを探し、グローバルフラグは無視される点に注意が必要です。このメソッドは、String.prototype.indexOf()メソッドが単純な部分文字列を検索するのに対し、より複雑なパターンマッチングを正規表現を用いて行いたい場合に適しています。特定のパターンが文字列内に存在するかどうか、またその開始位置を確認したい場合に、このメソッドは特に役立ちます。

構文(syntax)

1const str = "Hello world!";
2const result = str.search(/world/);
3console.log(result);

引数(parameters)

regexp

  • regexp: RegExp: 検索に使用する正規表現オブジェクト、または正規表現として解釈される文字列

戻り値(return)

number

指定された部分文字列が文字列内で最初に見つかった位置のインデックスを返します。見つからなかった場合は -1 を返します。

関連コンテンツ

関連プログラミング言語