カテゴリ: JavaScript 更新日: 2026/01/12

JavaScriptの正規表現で任意の1文字(.)や文字クラスを使う方法

JavaScriptの正規表現で任意の1文字(.)や文字クラスを使う方法
JavaScriptの正規表現で任意の1文字(.)や文字クラスを使う方法

先生と生徒の会話形式で理解しよう

生徒

「JavaScriptの正規表現で、任意の文字や特定の文字だけをマッチさせる方法ってありますか?」

先生

「はい、正規表現には . と呼ばれる任意の1文字にマッチする記号や、文字クラスと呼ばれる [] の中に文字を指定する方法があります。」

生徒

「それぞれどんなときに使うんですか?」

先生

「順番に例を見ながら説明します。初心者でもわかるように簡単に使い方を紹介しますね。」

1. .(ドット)で任意の1文字にマッチさせる

1. .(ドット)で任意の1文字にマッチさせる
1. .(ドット)で任意の1文字にマッチさせる

正規表現の . は、改行を除く任意の1文字にマッチします。たとえば、文字列の中で「aの次にどんな文字でも続く場合」を見つけたいときに使います。


const text = "cat, car, cab";
const result = text.match(/ca./g);
console.log(result); // ["cat", "car", "cab"]

この例では、caの後にどんな文字でも1文字続く場合にマッチします。cat、car、cabのすべてに一致します。

2. 文字クラス [] で特定の文字にマッチさせる

2. 文字クラス [] で特定の文字にマッチさせる
2. 文字クラス [] で特定の文字にマッチさせる

文字クラスは [] 内に指定した文字のどれか1文字にマッチします。たとえば、a、b、c のいずれかにマッチさせたい場合です。


const text = "cat, bat, rat, mat";
const result = text.match(/[bcr]at/g);
console.log(result); // ["cat", "bat", "rat"]

ここでは、b、c、r のいずれかの文字で始まる単語にマッチします。mat は m で始まるのでマッチしません。

3. 文字クラスの範囲指定

3. 文字クラスの範囲指定
3. 文字クラスの範囲指定

文字クラスでは範囲を指定することもできます。例えば、aからfまでの文字にマッチさせる場合は [a-f] と書きます。


const text = "apple, banana, cherry, date";
const result = text.match(/[a-d]ate/g);
console.log(result); // ["date"]

この例では、先頭の文字が a〜d の範囲にある「date」にだけマッチします。

4. 否定の文字クラス

4. 否定の文字クラス
4. 否定の文字クラス

文字クラスの先頭に ^ を入れると、その文字以外にマッチさせることができます。例えば a 以外の文字にマッチさせる場合です。


const text = "apple, banana, cherry";
const result = text.match(/[^a]pple/g);
console.log(result); // []

この場合、最初の文字が a ではない場合にマッチします。apple は a で始まるのでマッチしません。

5. 活用ポイント

5. 活用ポイント
5. 活用ポイント
  • . は改行を除く任意の1文字にマッチ。
  • [] の中に文字を並べると、そのいずれかの文字にマッチ。
  • 文字クラスで範囲指定や否定指定を使うと、より柔軟に文字を検索可能。
  • 文字列検索や入力チェック、特定のパターン検出に便利です。

6. 注意点

6. 注意点
6. 注意点

正規表現の . は改行にはマッチしません。複数行の文章で任意の文字をマッチさせたい場合は [\s\S] のように書く必要があります。また、文字クラスでは特定の文字だけを正確に指定することで、意図しない文字にマッチしないよう注意しましょう。

カテゴリの一覧へ
新着記事
New1
JavaScript
JavaScriptの正規表現で繰り返し指定(* + ? {n,m})を学ぼう
New2
TypeScript
TypeScriptとESNextの連携を完全ガイド!最新機能を使いこなす設定と対応法
New3
JavaScript
JavaScriptの正規表現で任意の1文字(.)や文字クラスを使う方法
New4
TypeScript
TypeScriptで非同期イテレーター(for await of)を活用する
人気記事
No.1
Java&Spring記事人気No1
JavaScript
JavaScriptのインストール方法まとめ!Windows・Mac・Linux別にステップ解説
No.2
Java&Spring記事人気No2
JavaScript
JavaScriptの日時操作Tips!実務で役立つテクニック集
No.3
Java&Spring記事人気No3
JavaScript
JavaScriptプログラムの実行方法まとめ!ブラウザ・Node.js・コンソールの使い方
No.4
Java&Spring記事人気No4
TypeScript
TypeScriptでESLintとPrettierを導入!コード整形ルールを自動で統一する方法
No.5
Java&Spring記事人気No5
TypeScript
TypeScriptのif文の使い方を完全ガイド!初心者でもわかる条件分岐
No.6
Java&Spring記事人気No6
TypeScript
TypeScriptでコメントを書く正しい書き方と使い分け【初心者向けにやさしく解説】
No.7
Java&Spring記事人気No7
JavaScript
JavaScriptの配列の要素にアクセスする方法(インデックス番号の使い方)
No.8
Java&Spring記事人気No8
TypeScript
TypeScriptの型を明確に設計するコツとチーム開発の指針