Googleスプレッドシートで特定の文字を抽出する方法!

Googleスプレッドシートで特定の文字を抽出する方法!

Googleスプレッドシートで管理しているデータの文字列から、特定の文字だけを抽出したい場合がありますよね。REGEXEXTRACT関数を用いて文字列を抽出してみましょう。この記事では、Googleスプレッドシートで特定の文字を抽出する方法をご紹介しています。


目次[非表示]

  1. Googleスプレッドシートで特定の文字を抽出したい
  2. Googleスプレッドシートで特定の文字を抽出する方法

Googleスプレッドシートで特定の文字を抽出したい

Googleスプレッドシートの表で様々なデータを管理していて、一つの文字列に色々な文字が入っている時に文字列の中から特定の文字を抽出したいと思ったことはありませんか?例えばアドレス帳から名前だけを抽出したい・メールアドレスだけを抽出したいというシーンもありますよね。

この場合は、特定の関数を使用することで特定の文字だけを抽出することができますよ。この記事では、Googleスプレッドシートで特定の文字を抽出する方法をご紹介していきます。

Googleスプレッドシートで特定の文字を抽出する方法

REGEXEXTRACT関数の使い方

特定の文字を抽出したい場合に便利な関数が「REGEXEXTRACT関数」です。REGEXEXTRACT構文は下記の通りとなります。

  • =REGEXEXTRACT(テキスト, 正規表現)

「テキスト」部分はセルを参照させるか、”(ダブルクォーテーション)で対象の文字列を囲んで指定しましょう。

  • =REGEXEXTRACT(A1, 正規表現)
  • =REGEXEXTRACT("指定したい文字列", 正規表現)

「正規表現」は、検索する文字列を表す正規表現を”(ダブルクォーテーション)で囲んで指定する必要があります。正規表現とは、文字列のパターンを記号の組み合わせにより表現する方法です。Googleスプレッドシートにおいては「RE2構文」をサポートしており、指定した正規表現と一致する文字列がテキスト部分から抽出されるのです。正規表現の一部を下記に記します。

  • .:任意の一文字
  • //a/@href:0回以上の繰り返し
  • +:1回以上の繰り返し
  • ?:0回・1回の出現
  • {n,m}:n回以上、m回以下の繰り返し
  • ^●●:先頭に「●●」のある文字列
  • ●●$:末尾に「●●」のある文字列
  • [●]:「●」に一致する文字列、複数指定可能
ちなみに、正規表現は括弧()で括ることができます。複数の正規表現を使用したい場合は(.+)のように括弧で括ってみましょう。

実際に特定の文字を抽出してみる

名前とメールアドレスが記入された表
それでは、REGEXEXTRACT関数を使用して特定の文字列の抽出を行ってみましょう。画像の例では、名前とメールアドレスを用意してみました。ここから名前のみの抽出とメールアドレスのみの抽出を行います。
抽出結果を入れたいセルに「=REGEXEXTRACT(A1,"(.+)<")」と入力
このケースで名前を抽出する場合は、記号「<」の手前までになっています。ですので正規表現は「(.+)<」として括弧の前の文字を抽出するようにします。A1セルのアプリコットの名前だけを抽出する関数は「=REGEXEXTRACT(A1,"(.+)<")」になります。
名前の抽出に成功
このように、「アプリコット」だけを抽出することができました。次は、メールアドレスの部分だけを抽出してみましょう。
メールアドレスを抽出したいセルに「=REGEXEXTRACT(A1,"<(.+)>")」と入力
メールアドレスは括弧でくくられているため、正規表現は「<(,+)>」とします。A1セルのメールアドレスのみを抽出したい場合の関数は「=REGEXEXTRACT(A1,"<(.+)>")」となります。これで、メールアドレスの部分のみを抽出することができました。
抽出結果を表示させたいセルに「=REGEXEXTRACT(A2,"(.+)<(.+)>")」と入力
しかし、毎回毎回1つずつ関数を入力して抽出するのは面倒ですよね。そこで、一つの関数だけで2つのセルに名前をメールアドレスを抽出してみましょう。A2セルのりんごから名前をメールアドレスの2つを抽出する場合の関数は「=REGEXEXTRACT(A2,"(.+)<(.+)>")」で複数の部分を指定しています。
名前とメールアドレスが抽出されたことを確認
このように、B2セルに名前が、C2セルにメールアドレスが抽出されました。関数と正規表現の使い方を覚えれば、このように簡単にGoogleスプレッドシートで特定の文字を抽出することができますよ。

関連記事