
Googleスプレッドシートで使用することができる関数の1つに、「REGEXEXTRACT関数」というものがあります。REGEXEXTRACT関数は、指定した正規表現に基づき対象の文字列からテキストの抽出を行うことができる関数です。この記事では、スプレッドシートのREGEXEXTRACT関数の使い方をご紹介していきます。
スプレッドシートのREGEXEXTRACT関数の使い方
それでは、スプレッドシートのREGEXEXTRACT関数の使い方をご紹介していきます。まずは、REGEXEXTRACT関数の数式について説明します。REGEXEXTRACT関数の数式は「=REGEXEXTRACT関数(テキスト,正規表現)」となります。第1引数の「テキスト」で、抽出を行いたい文字列が入力されているセルの指定を行います。第2引数の「正規表現」で、使用する正規表現の指定を行います。主に使用される正規表現は、下記の通りとなります。
- .:任意の1文字にマッチする。
- +:直前の文字が1回以上繰り返される場合にマッチする。
- *:直前の文字が0回以上繰り返される場合にマッチする。
- \:or条件として使用される。
- [...]:角括弧に含まれているいずれか1文字にマッチする。
- [^...]:角括弧に含まれている文字以外にマッチする。
- {n}:直前の文字の桁数を指定する。
- {n,}:直前の文字の最小桁数のみを指定することができる。
- {n,m}:直前の文字の最小桁数と最大桁数を指定することができる。
- ^:直前の文字が行の先頭にある場合にマッチする。
- $:直前の文字が行の末尾にある場合にマッチする。

実際に、REGEXEXTRACT関数を使用してテキストの分割を行ってみましょう。画像の例では、B2セルに入力されている住所を都道府県・市区町村・残りの住所といった形で抽出していきます。
![C2セルに「=REGEXEXTRACT(B2,"(..+?[都道府県])(.+?[市区町村])(.*)")」と数式を入力](http://s3.ap-northeast-1.amazonaws.com/static.aprico-media.com/production/imgs/images/000/108/603/original.jpg?1719533727)
C2セルに「=REGEXEXTRACT(B2,"(..+?[都道府県])(.+?[市区町村])(.*)")」と数式を入力します。都道府県・市町村・残りの住所をそれぞれ正規表現で指定して区切りながら抽出を行うわけですね。

これで、C2セルからE2セルに都道府県・市区町村・住所を区切ったテキストを抽出して表示させることができました。注意点としては、テキストが抽出サれて表示されるセルに他のデータが入力されているとエラーが返ってしまう点です。テキストを表示させるセル範囲内には、データを入力しないようにしましょう。
以上が、スプレッドシートのREGEXEXTRACT関数の使い方の説明となります。