正規表現(regex)について

Google アナリティクスは正規表現に対応しているため、ビューフィルタ目標セグメントユーザーリストコンテンツ グループチャネル グループなどの機能で柔軟な指定が可能です。

この記事では、ユニバーサル アナリティクスと Google アナリティクス 4 の正規表現について説明します。

Google アナリティクスでは、特定の文字列が正規表現として使用され、対象範囲を自在に調整しながら Google アナリティクス データに含まれるパターンに一致させることができます。

たとえば、自社の従業員によるアクセスで発生したサイトデータを除外するビューフィルタを作成するには、従業員が使用する IP アドレスの全範囲を発生元とするすべてのデータを除外する正規表現を使用します。このとき、IP アドレスの範囲が 198.51.100.1~198.51.100.25 の場合、25 個の IP アドレスを入力するのではなく、このアドレス全体に一致する 198\.51\.100\.\d* のような正規表現を作成します。

また、2 つの異なる都市のキャンペーン データのみを対象とするビューフィルタを作成するには、大阪|東京(大阪または東京)のような正規表現を作成します。

正規表現のメタ文字

ワイルドカード

. 任意の 1 文字(文字、数字、記号)に一致します 「1.」で一致するデータ:
10、1A

「1.1」で一致するデータ:
111、1A1

? 直前の文字が 0 回または 1 回出現する場合に一致します 「10?」で一致するデータ:
1、10

+ 直前の文字が 1 回以上出現する場合に一致します 「10+」で一致するデータ:
10、100

* 直前の文字が 0 回以上出現する場合に一致します 「1*」で一致するデータ:
1、10

| OR 条件を作成します

正規表現の末尾では使用しないでください
「1|10」で一致するデータ:
1、10

アンカー

^ 隣接する文字が文字列の先頭である場合に一致します 「^10」で一致するデータ:
10100、10x

「^10」で一致しないデータ:
110、110x

$ 隣接する文字が文字列の末尾である場合に一致します 「10$」で一致するデータ:
110、1010

「10$」で一致しないデータ:
100、10x

グループ

( ) 囲まれた文字が同じ順序で文字列に含まれる場合に一致します


他の正規表現をグループ化する場合にも使用します
「(10)」で一致するデータ:
10101、1011

「([0-9]|[a-z])」で一致するデータ:
すべての数字と小文字

[ ] 囲まれた文字が任意の順序で文字列に含まれる場合に一致します 「[10]」で一致するデータ:
012、120、210

- 角かっこ内の文字範囲が文字列に含まれる場合に一致します 「[0-9]」で一致するデータ: 0~9 のすべての数字

エスケープ文字

\ 隣接する文字を正規表現のメタ文字としてではなく通常の文字として解釈するよう指定します 「\.」と指定すると、隣接するドットがワイルドカードとしてではなく、ピリオドや小数点として解釈されます。

「216\.239\.32\.34」で一致するデータ:
216.239.32.34

 

ヒント

ユニバーサル アナリティクスと Google アナリティクス 4 でのデフォルトの動作の比較

デフォルトでは、ユニバーサル アナリティクス プロパティの正規表現は「部分一致」として処理されます。指定したパターンがデータのどこかに含まれていれば、正規表現は true になります。

たとえば、正規表現で「India」というパターンを指定した場合、「India」、「Indian」、「Indiana」、「Indianapolis」などが一致します。部分一致にするためにメタ文字を使用する必要はありません。

Google アナリティクス 4 プロパティでは、正規表現はデフォルトで「完全一致」として処理されます。データは、指定されたパターンと完全に一致している必要があります。たとえば、パターン「India」は「India」にのみ一致します。この正規表現を部分一致として処理するには、メタ文字を使用する必要があります。たとえば「India.*」と指定すると、「India」で始まり、任意の文字列(何もつかない場合を含む)で終わる値が返されます。

シンプルな表現にする

正規表現はシンプルに作成してください。正規表現がシンプルであれば、他のユーザーが簡単に解釈して変更できます。

メタ文字と一致する場合

バックスラッシュ「\」を使用すると、正規表現のメタ文字がエスケープされ、通常の文字として解釈されます。たとえば、ドットを IP アドレスの小数点区切りとして使用する際は、ワイルドカードとして解釈されないように、バックスラッシュ(\.)を付けて使用します。

メタ文字を使用して一致範囲を制限する

正規表現は最長一致の原則があるため、明示的に制限しない限り、指定した内容だけでなく隣接する文字も一致してしまいます。たとえば部分一致の場合、「site」は、「mysite」、「yoursite」、「parasite」(「site」を含む文字列)に一致します。一致範囲を限定したい場合は、それに合わせた正規表現にします。たとえば、文字列「site」のみに一致させるには、「site」が文字列の先頭かつ末尾であることを示す正規表現「^site$」にします。

Google RE2 正規表現の構文

この情報は役に立ちましたか?

改善できる点がありましたらお聞かせください。
true
独自の学習プログラムを選択する

Google アナリティクス 4 を最大限に活用するための新しいリソースをご確認ください(google.com/analytics/learn)。新しいウェブサイトには、動画、記事、ガイド付きフローが含まれ、Google アナリティクスの Discord、ブログ、YouTube チャンネル、GitHub リポジトリへのリンクも記載されています。

今すぐ学習を始める

検索
検索をクリア
検索を終了
メインメニュー
339934435027211458
true
ヘルプセンターを検索
true
true
true
true
true
69256
false
false