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

JavaScript RegExpのexec()メソッドとは?役割と使い方をわかりやすく解説

JavaScriptのexec()メソッドは、正規表現(RegExp)オブジェクトに定義されたパターンを使って、対象の文字列内を検索するためのメソッドです。

検索の結果、パターンに一致する部分が見つかれば、そのマッチしたテキストを返します。一方、一致するものが存在しない場合はnullを返します。

exec()メソッドの基本的な動作

  • パターンに一致した場合:マッチした文字列を返す
  • パターンに一致しなかった場合:nullを返す

また、exec()はマッチした文字列だけでなく、マッチ位置のインデックスや元の文字列などの詳細情報を持つ配列風のオブジェクトを返す点も特徴です。

サンプルコード

以下のコードを実行すると、JavaScriptの正規表現でexec()メソッドをどのように使うのかを確認できます。

<html>
   <head>
      <title>JavaScript Regular Expressions</title>
   </head>
   <body>
      <script>
         var myStr = "Welcome to our website! Welcome to Tutorialspoint!";
         var res = /t/.exec(myStr);
         document.write(res);
      </script>
   </body>
</html>

実行結果の解説

この例では、変数myStrに格納された文字列に対して、パターン/t/で検索を行っています。/t/は「小文字のt」に一致する正規表現なので、文字列の中で最初に出現する「t」が返されます。

出力結果:

t

このように、exec()メソッドを使えば、正規表現パターンに基づいた柔軟な文字列検索が可能になります。グローバルフラグ(g)を付けた場合は、lastIndexプロパティを利用して繰り返し呼び出すことで、すべてのマッチ箇所を順番に取得することもできます。

  1. JavaScriptのexec()メソッドとは?正規表現での文字列検索の使い方を解説

    exec()メソッドとはexec()は、JavaScriptの正規表現(RegExp)メソッドの一つです。文字列の中から指定したパターンを検索し、マッチしたテキストをオブジェクトとして返します。同じく正規表現メソッドであるtest()がtrue/falseという真偽値を返すのに対し、exec()はマッチした文字列や位置などの詳細情報を持つオブジェクトを返す点が大きな違いです。パターンが見つからなかった場合はnullが返されます。戻り値のオブジェクトには、obj[0]でマッチした文字列そのものを、obj.indexで文字列内のマッチ開始位置(インデックス番号)を取得できます。例1:パターン「es

  2. JavaScriptのexec()メソッドとは?正規表現マッチングの使い方を徹底解説

    JavaScriptのexec()メソッドは、正規表現オブジェクトに対して文字列内のパターン一致検索を実行するためのメソッドです。指定した文字列の中に一致するテキストが見つかった場合はそのマッチ結果を返し、見つからなかった場合は null を返します。 exec()メソッドの基本構文 regexObj.exec(str) regexObj:検索を実行する正規表現オブジェクト(RegExpインスタンス) str:検索対象となる文字列 戻り値は、一致が見つかった場合にはマッチ情報を含む配列(index や input プロパティも付加される)、見つからなかった場合は null となります。