REGEXMATCH関数の使い方|決まった形の文字かどうかを判定する
※写真はイメージです
書き方
=REGEXMATCH(テキスト, 正規表現)セルの文字が、正規表現(文字の形のルール)に合うかどうかを TRUE/FALSE で返します。「郵便番号が 123-4567 の形か」「〇〇を含むか」のチェックに使います。
引数の意味
| 引数 | 入れるもの | 図の例 |
|---|---|---|
| テキスト | 調べる文字 | A2 |
| 正規表現 | 文字の形のルール(" " で囲む) | "^\d{3}-\d{4}$" |
よく使う正規表現の記号
| 記号 | 意味 | 例 |
|---|---|---|
\d | 数字1つ | \d{3}=数字3つ |
^ / $ | 先頭/末尾 | ^東京=東京で始まる |
. | なんでも1文字 | .{2}=2文字 |
| | どれか | 東京|大阪 |
* / + | 0回以上/1回以上 | \d+=数字が1つ以上 |
[ ] | 中のどれか1文字 | [都道府県] |
「〇〇を含む」を判定する
=REGEXMATCH(A2, "八王子|国分寺")八王子か国分寺のどちらかを含めば TRUE。IFと組み合わせて =IF(REGEXMATCH(A2,"八王子|国分寺"), "近い", "") のようにも使えます。
条件付き書式で、形がおかしいセルに色を付ける
範囲を選んで「表示形式」→「条件付き書式」→「カスタム数式」に =NOT(REGEXMATCH(A2, "^\d{3}-\d{4}$")) と入れると、形の正しくない郵便番号に色が付きます。
うまくいかないとき
1#VALUE!「数値ではなく文字列を指定してください」
セルの中身が数字(数値)です。REGEXMATCHは文字にしか使えません。
直し方REGEXMATCH(A2&"", …) のように &"" を付けて文字にします。
2\d が効かない
Excelの式やほかのサイトの書き方をそのまま使っています。
直し方スプレッドシートは RE2 という書き方です。先読み(?=)など、使えない記号があります。
使えるバージョン
Googleスプレッドシートだけの関数です。Excelにはありません。
Excelでは
Excel(Microsoft 365)には、2024年から同じ働きの REGEXTEST 関数が入りました。
よくある質問
REGEXMATCHとは?
セルの文字が正規表現(文字の形のルール)に合うかどうかを、TRUE・FALSEで返すGoogleスプレッドシートの関数です。
数字のセルでエラーになります
&"" を付けて文字にしてから渡します。
「含む」を判定するには?
=REGEXMATCH(A2,"八王子") のように、含んでほしい文字をそのまま書きます。複数なら | でつなぎます。
一緒に覚えたい関数・操作
このページについて
操作の説明は、パソコンのブラウザで開いた日本語のGoogleスプレッドシートに合わせています。関数の働きはGoogleの公式ヘルプ(スプレッドシートの関数リスト)で確かめています。図はこのサイトで作ったもので、表の会社名・商品名・人名・URLは例です。このサイトはGoogleとは関係ありません。運営者情報