JavaScriptの正規表現の便利な活用Tips集まとめ
先生と生徒の会話形式で理解しよう
生徒
「先生、JavaScriptの正規表現を使いこなしたいのですが、便利な使い方のコツを知りたいです。」
先生
「では、日常的に使える便利なテクニックをいくつか紹介しましょう。正規表現は文字列検索や置換に強力なツールです。」
生徒
「初心者でもすぐに使えるような方法ですか?」
先生
「もちろんです。それぞれ簡単な例と合わせて説明します。」
1. 任意の文字列を検索する
正規表現で特定の文字列を検索する基本です。/pattern/の形式で書き、matchメソッドで一致する部分を取得できます。
const text = "私はJavaScriptが好きです";
const result = text.match(/JavaScript/);
console.log(result); // ["JavaScript"]
このように、文章の中から簡単に特定の文字列を見つけられます。
2. 複数パターンをまとめて検索
複数のキーワードを一度に検索したいときは、パイプ|を使います。
const text = "JavaScriptとPythonは人気です";
const result = text.match(/JavaScript|Python/g);
console.log(result); // ["JavaScript","Python"]
これで文章の中に複数の候補がある場合も簡単に検出できます。
3. 数字や文字列のパターンを抽出
\dは数字、\wは英数字にマッチします。繰り返しも+や*で指定可能です。
const text = "電話番号は090-1234-5678です";
const result = text.match(/\d{3}-\d{4}-\d{4}/);
console.log(result); // ["090-1234-5678"]
数字や特定の形式を抽出する際に便利です。
4. 先頭・末尾の確認
文章の先頭や末尾にマッチさせたいときは、^や$を使います。
const text = "JavaScriptは楽しい";
const result = /^JavaScript/.test(text);
console.log(result); // true
文章の最初が特定の文字列かどうかを判定できます。
5. 文字列の置換で活用
replaceメソッドと正規表現を組み合わせると、文章中の文字列を一括で置換できます。
const text = "JavaScriptは楽しい。JavaScriptを学ぼう";
const result = text.replace(/JavaScript/g, "JS");
console.log(result);
/*
JSは楽しい。JSを学ぼう
*/
文章全体を効率よく変換できる便利な方法です。
6. 大文字・小文字を無視して検索
iフラグを使うと、大文字・小文字を区別せずにマッチします。
const text = "javascriptが楽しい";
const result = text.match(/JavaScript/i);
console.log(result); // ["javascript"]
ユーザー入力など、大小文字が混在する場合に便利です。
7. 複数行の検索と置換
mフラグと[\s\S]を組み合わせると、複数行にまたがる文章でも正規表現で検索・置換ができます。
const text = `タイトル
本文1
本文2`;
const result = text.match(/タイトル[\s\S]*本文2/);
console.log(result); // ["タイトル\n本文1\n本文2"]
改行を含む文章全体をまとめて扱うことが可能です。
8. 実用的なTipsまとめ
- 検索は
match、置換はreplaceを使う - 複数パターンは
|でまとめる - 数字や特定形式は
\dや繰り返し指定で抽出 - 大文字・小文字の区別は
iフラグで無視 - 複数行の文章は
mフラグや[\s\S]で対応 - 先頭・末尾の条件は
^や$を活用
これらのテクニックを組み合わせることで、JavaScriptの正規表現を日常のプログラミングで効率的に使いこなせます。