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

JavaScriptの正規表現マッチングに変数を使う方法

JavaScriptでは、match()メソッドに変数名を渡すことで、文字列内のパターンを動的に検索できます。正規表現オブジェクトを作成するには、new RegExp()コンストラクタを使用します。

基本的な構文

console.log(対象の変数名.match(マッチング用変数名));

検索したいキーワードが変数に格納されている場合は、その変数をnew RegExp()の第一引数に渡して正規表現オブジェクトを生成します。第二引数にはフラグ(例: 'g'は全件検索)を指定できます。

実装例

var senetence = 'My Name is John';
console.log("元の値=");
console.log(senetence);
var matchWord = 'John';
console.log("マッチさせる値=");
console.log(matchWord);
var matchRegularExpression = new RegExp(matchWord, 'g');
console.log(senetence.match(matchWord));

プログラムの実行方法

上記のプログラムを実行するには、Node.js環境で以下のコマンドを使用します。

node fileName.js

ここでは、ファイル名をdemo107.jsとしています。

出力結果

このコードを実行すると、以下のような出力が得られます。

PS C:\Users\Amit\JavaScript-code> node demo107.js
元の値=
My Name is John
マッチさせる値=
John

ポイント解説

  • 文字列リテラルを直接match()に渡すことも可能ですが、変数から正規表現を作成したい場合はnew RegExp()を使いましょう。
  • 検索語に特殊文字が含まれる可能性がある場合は、RegExpに渡す前にエスケープ処理を行うことをおすすめします。
  • 'g'フラグを付けると、最初の一つだけでなく、文字列中のすべての一致箇所を配列として取得できます。
  1. JavaScriptの正規表現修飾子(g・i・m)をサンプルコード付きで解説

    JavaScriptの正規表現修飾子とは JavaScriptの正規表現における修飾子(フラグ)とは、パターンリテラルの末尾に付加することで検索の挙動を変更できる、省略可能な指定のことです。これを使うことで、大文字と小文字を区別しない検索や文字列全体を対象としたグローバル検索などが簡単に実現できます。さらに、複数の修飾子を組み合わせて指定することも可能です。 主な修飾子の一覧 修飾子説明 gグローバルマッチングを有効にします。最初の一致で処理を止めず、マッチしたすべての結果を返します。 i大文字と小文字を区別しない(ignore case)マッチングを有効にします。 m複数行(mul

  2. DOM要素を取得してconsole.logでコンソールに出力する方法【JavaScript入門】

    JavaScriptでDOMに関連する変数をコンソールに表示したい場合、document.getElementById()を使用して対象の要素を取得し、その結果をconsole.log()で出力します。この記事では、実際のコード例を使って、DOM要素をコンソールにログとして表示する手順をわかりやすく解説します。コード例以下は、テキスト入力フィールドのDOM要素を取得してコンソールに表示するサンプルコードです。<!DOCTYPE html> <html lang=ja> <head>    <meta charset=UTF-8>