Google アナリティクスは正規表現に対応しているため、データフィルタ、キーイベント、セグメント、オーディエンス、コンテンツ グループ、カスタム チャネル グループなどで柔軟な指定が可能です。
Google アナリティクス 4 では、特定の文字列が正規表現として使用され、対象範囲を自在に調整しながら 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」で一致するデータ: 10、100、10x 「^10」で一致しないデータ: 110、110x 例 |
$ | 隣接する文字が文字列の末尾である場合に一致します | 「10$」で一致するデータ: 110、1010 「10$」で一致しないデータ: 100、10x 例 |
グループ
( ) | 囲まれた文字が同じ順序で文字列に含まれる場合に一致します 他の正規表現をグループ化する場合にも使用します |
「(10)」で一致するデータ: 10、101、1011 「([0-9]|[a-z])」で一致するデータ: すべての数字と小文字 例 |
[ ] | 囲まれた文字が任意の順序で文字列に含まれる場合に一致します | 「[10]」で一致するデータ: 012、120、210 例 |
- | 角かっこ内の文字範囲が文字列に含まれる場合に一致します | 「[0-9]」で一致するデータ: 0~9 のすべての数字 例 |
エスケープ文字
\ | 隣接する文字を正規表現のメタ文字としてではなく通常の文字として解釈するよう指定します | 「\.」と指定すると、隣接するドットがワイルドカードとしてではなく、ピリオドや小数点として解釈されます。 「216\.239\.32\.34」で一致するデータ: 216.239.32.34 例 |
ヒント
式はシンプルに
正規表現をシンプルに作成すると、他のユーザーが解釈したり変更したりしやすくなります。
メタ文字と一致する場合
バックスラッシュ「\」を使用すると、正規表現のエスケープ文字が通常の文字として解釈されます。たとえば、ドットを IP アドレスの小数点区切りとして使用する際は、ワイルドカードとして解釈されないように、バックスラッシュ(\.)を付けて使用します。
メタ文字を使用して一致範囲を制限する
正規表現は最長一致の特徴があるため、明示的に除外しない限り、指定した内容だけでなく隣接する文字も一致します。たとえば部分一致の場合、「site」は、「mysite」、「yoursite」、「theirsite」、「parasite」(「site」を含む文字列)に一致します。
一致結果を限定する必要がある場合は、それに応じた正規表現が必要です。たとえば、文字列「site」のみに一致させるには、「site」が文字列の先頭かつ末尾であることを示す正規表現「^site$」にします。