Googleアナリティクス
2017.05.16
Googleアナリティクス・GTMのURL指定によく使う正規表現まとめ
Googleアナリティクスの目標設定やGTMのトリガー指定で、到達ページを設定したいんだけど「等しい」「先頭が一致」では計測したいURLを上手く指定できない…そんな時に柔軟にURL指定できるのが正規表現です。
- 複数のドメイン上にある目標をまとめて計測したい(電話番号のリンククリックとか)
- ページがパラメータにより動的に作られるため条件ごとに設定したい(~.php?~とか)
- 計測対象外のURLを除外したい(sub.xxx.comとxxx.comがあって、xxx.comだけ取りたいとか)
こんなお悩みが解決できます。 特にクロスドメイントラッキング設定時(ドメイン名も含め指定しないといけない時)に出番が多い印象ですね。
とは言え正規表現に馴染みがない方も多いでしょうし、調べても小難しくていまいちよくわからない…そんな方のためによく使う正規表現と目標設定例をまとめました。
計測漏れ・余分なデータ計測の無いようしっかり設定していきましょう。
コンテンツ
そもそも正規表現って何?
ざっくり言うと、プログラミング等で特定の文字列・条件を指定するための構文のようです。
Googleアナリティクスの目標設定で言えば「URLにこの文字列を含む」とか「この文字列で始まる/終わる」といった、URLパターンの条件付けが色々便利にできるよ!ってことです。
よく使う正規表現のメタ文字
正規表現で条件指定するための文字をメタ文字と言います。 URLにこれらの文字列を組み合わせて、「含む」とか「もしくは」とか「末尾一致」といった条件を適用していきます。
メタ文字 | 意味 |
---|---|
. | 何かしらの1文字 |
* | 直前の文字が無い、または1個以上連続する |
? | 直前の文字が無い、または1個だけある |
^ | 行の先頭 |
$ | 行の終わり |
() | ()内の文字列をグループ化 |
| | いずれかの文字列 |
¥ | メタ文字を文字列として認識させる。(エスケープ) ※環境によってバックスラッシュで表示される |
正規表現の使用例
メタ文字を文字列として認識させる「¥」
まずは、正しくURLを指定する上で欠かせない「¥」の使い方について。 例えば、以下のようなURLを正規表現で指定するとします。
計測URL:
www.mightyace.co.jp/?test=test
URLをそのまま表記してしまうと「.」「?」が正規表現として認識されてしまいます。
もし以下のように「.」の代わりに違う1文字が入った場合もマッチしてしますし、パラメータを示す「?」を識別できません。
wwwamightyacebcocjp/test=test
なので、この場合はメタ文字の「.」と「?」を文字列として認識させるため、それぞれのメタ文字の前に「¥」をつけます。
指定例:
www¥.mightyace¥.co¥.jp/¥?test=test
上記の例のように「.」の代わりに他の文字列が入るURLは滅多にないとは思いますし、「¥」がなくても条件としてはマッチするため、多くの場合「.」の前に「¥」は不要です。
とはいえ「?」は認識できませんし、思わぬ動作をさせないためにもしっかり記載していく癖付けをお勧めします。
グループ化する「()」とor条件を指定する「|」
複数のディレクトリ「いずれか」配下のページを指定したい、という時に使用します。
計測URL:
/trial/thanks.html /contact/thanks.html
共通している「thanks.html」はそのまま記述し、変動する「trial」「contact」をor条件になるよう指定します。
指定例:
/(trial|contact)/thanks.html
行の先頭と終わりを指定する「^」「$」
正規表現でURLを記述する場合、始まりと終わりを指定しなかった場合、いわゆる「~を含む」という条件指定になってしまいます。
そのため、計測範囲を正しく絞るために始まり・終わりを指定していきます。
計測URL:
www.mightyace.co.jp/trial/thanks.html
この時に「/trial/thanks.html」とだけ書いてしまうと「/trial/thanks.html」だけでなく「sub.mightyace.co.jp/trial/thanks.html」も「www.mightyace.co.jp/trial/thanks.html?test=test」も計測してしまいます。
クロスドメイントラッキングの設定をし、複数ドメインの計測をしている際・ページボリュームが非常に多い場合等はこういった例外が起きないよう注意が必要です。
指定例:
^www.mightyace.co.jp/trial/thanks.html$
ワイルドカードして使用する「.*」
「.」と「*」を組み合わせ「.*」という風に使用します。組み合わせることで 「何でもいいから文字列がある(無くてもいい)」というワイルドカード的な意味になります。
ディレクトリ配下のページ全てを指定したい、という時に使用します。
計測URL:
/trial/thanks.html /trial/order.html 等/trial/配下すべてのページ
指定例:
/trial/.*
文字列の有無を指定する「?」
「直前の文字があってもなくても良い、ある場合は指定した文字のみ」という条件指定です。 PCサイトとスマホサイトの両方を指定したいが、スマホサイトの場合はURLに「/sp/」が含まれる、という時に使用します。
計測URL:
www.mightyace.co.jp/trial/thanks.html www.mightyace.co.jp/sp/trial/thanks.html
上記の「/sp」があってもなくても良い、という指定をします。
指定例:
www.mightyace.co.jp(/sp)?/trial/thanks.html
※本記事は、こちらのWebサイトを参考に記載しています:サルにもわかる正規表現入門
正しい効果測定は、正しい計測設定から!Googleアナリティクス設定項目チェックシート(無料)
リスティング・Googleアナリティクス・ホームページ・ランディングページなど
Webマーケティングのことなら何でもご相談ください
株式会社マイティーエースでは、様々なWeb広告・Webマーケティングなど
お客様に合ったご提案しています。
興味をお持ちいただけた方は、まずは気軽にご相談ください。