Google Analyticsで頻出!かなり役立つ正規表現のまとめ

  • ルル
    ルル マーケティングちーむ
  • このエントリーをはてなブックマークに追加
Google Analyticsで頻出する正規表現まとめ

Google Analyticsを設定するときに「もっと融通がきいたらいいのにな…」と思う事はありませんか?

それ、正規表現でできるかもしれませよ!

正規表現でできる事

そもそも「正規表現」って何のために使うのでしょう?

正規表現とは、特殊文字や記号を使った一つの文字列で、複数の異なる文字列を表現する仕組みです。

詳しくはこちらの記事もご覧ください。

使える!非エンジニアの為の「正規表現の処方箋」

Google Analyticsでは、何か動的な文字列を、正規表現を使ってあらわす事ができます。

以下に例をとってご説明しますね。

IPアドレス除外の方法

自社で利用しているIPアドレスを、Google Analyticsから除外したい!というとき。

「下4ケタが、パソコンによって違うんだけど…一台一台設定しないとだめ?」

そんな事もあるかと思います。

そこで役に立つのが正規表現!

数字の羅列を、特殊文字に置き換えてしまいましょう。

0~9のどれかを繰り返す

除外したいIPアドレスが

123.456.789.XXXX

だった場合。

正規表現の場合にはまず「ドットの前には\マークを記述」します。

123\.456\.789\.XXXX

次に「XXXX」に入る文字列を置き換えます。

ここに入るのは数字、0~9のうちのどれかですよね?

なので、正規表現ではこうなります。

123\.456\.789\.[0-9]+

[]で囲まれた部分には0~9の中の1文字が入ります。

そして、[]の外に記述してある+が「[]で囲まれた文字が1回以上繰り返されるよ!」という事を表しています。

こちらはURLでも利用できます。

よく数字の羅列で生成されたページがありますよね?

かくいうこのGo-Nextブログも、「カテゴリ+数字の羅列」でページが作成されています。

今度はそちらを指定してみましょう。

URLを指定する方法

数字の羅列で作成したURLを、正規表現を使ってまとめて指定してみましょう。

このGo-Nextブログでは、

http://www.go-next.co.jp / blog / web / illustrator / XXXX /
ドメイン / blog / 大カテゴリ名 / 小カテゴリ名 / 数字の羅列 /

といったURLが使用されています。

この「数字の羅列」を置き換えるのは、先ほどのIPアドレスと同じ正規表現が利用できます。

http://www\.go\-next\.co\.jp/blog/web/illustrator/[0-9]+/

先ほども書きましたが「ドットの前には\マーク」を付けてくださいね!

そして今回の例の場合は、ハイフンの前にも\マークが必要です。

これで「WEBカテゴリの中のillustratorカテゴリの記事すべて」を表現する事ができました。

今回の例ではありませんでしたが、よくURLで利用される「/?q=submit」といった表現がありますよね。

この場合には「?の前にも\マーク」を付けてください。

URLに含まれる「数字以外の文字列」を置き換える場合

/以外の文字の繰り返し

先ほどの例では「大カテゴリがWEBで、小カテゴリがillustratorの記事」を指定しました。

ですが場合によっては「大カテゴリには何が入るか解らないけど、子カテゴリillustratorの記事だけを指定したい」という事も出てきますよね?

そんな場合に利用できる正規表現です。

まずは先ほどの正規表現。

http://www\.go\-next\.co\.jp/blog/web/illustrator/[0-9]+/

こちらから、大カテゴリの「WEB」という文字列が「何か解らない文字列」になっても対応できるようにしましょう。

その正規表現がこちら。

http://www\.go\-next\.co\.jp/blog/[^/]+/illustrator/[0-9]+/

/と/の間の文字列がさし替わっています。

「[]+」については先程と同じく「[]に囲まれた文字が1回以上繰り返される」という意味です。

先程は「0-9」だったので、「0~9のうちのどれかが繰り返される」という意味でした。

今度は[]の中に「^/」が入っていますね。

これは「/以外」という意味になります。

「^」には「その後の文字を含まない」という意味があります。

つまり「[^/]+」という表記で「/以外の文字が繰り返される」という意味になります。

こちらの応用として「子カテゴリが入るかどうか解らないけど、とにかく記事ページだけ指定したい!」という場合もあるかと思います。

そんな場合はこちら。

http://www\.go\-next\.co\.jp/blog/[^/]+/([^/]+/)?[0-9]+/

左から見ていきましょう。

まずは先程と同様、ドットとハイフンの前には\を付けていきましょう。

次に、大カテゴリは必ず入るので、先ほどと同じ「[^/]+/」で置き換えます。

問題はその次。小カテゴリが入るかどうかわかりません。

そこで「([^/]+/)?」を使用していますね。

こちら先ほどの[^/]+/を()で閉じて、?を記述してあります。

?は「前の文字が0回か1回繰り返す」という意味です。

つまりこの場合、「()内の文字列が、無いかもしれないし、1回はあるかもしれない」という意味です。

これで小カテゴリがある場合にも無い場合にも対応できます。

その後数字が入り、最後に/が入って、URLの完成ですね!

余談ですが、最後に$を付けると「ここが最後だぞ!」って表せるみたいですよ。

任意の1文字の繰り返し

任意の1文字の繰り返し

これまでの正規表現により、さまざまな場合がカバーできるのではないでしょうか。

ここでもう一つご紹介したいのが「任意の1文字」と「0回以上の繰り返し」です。

「任意の1文字」は「.(ドット)」で表され、
「0回以上の繰り返し」は「*(アスタリスク)」で表されます。

つまり「.*」では「何か解らない文字が、ないかもしれないし、何個もあるかも」という事です。

もう「どんな場合も当てはまる」と言って過言ではありません。
(実際には違うかもしれませんが、素人の感覚ではそんな感じです。)

URLで「.*」を指定すると「すべてのURL」が指定されますので、上手に利用してください。

正規表現に必要な「エスケープ」

後ろの文字をエスケープする

最後に、各所に出てきた「\」についてご説明したいと思います。

正規表現では「.(ドット)」は「任意の1文字」とご説明しましたよね?

つまり正規表現で書かれたURLでは「www.」などの「.(ドット)」も、「何か1文字入るぞ!」という意味になってしまいます。

そこで登場するのが「\」です。

\には「後に続く文字を、文字として認識する」という意味があるのです。

つまり「\.」と書いて初めて「.(ドット)という記号が入ります」と指定する事ができます。

その他にも、「ハイフン」や「?」も正規表現として意味を持っていますので、文字として認識させるには、それぞれ記号の前に\マークが必要ですので、注意してください。

詳しくはこちらもご参照ください。正規表現について – アナリティクス ヘルプ

ちなみに、「\」マークをGoogle Analyticsで入力すると、「バックスラッシュ」として表示されますが、問題ありませんのでびっくりしないでくださいね!

まとめ

こうした表現が解るようになることで、解析の幅が広がるのではないでしょうか。

正規表現をマスターしようと思うと大変ですが、Google Analyticsで頻出する表現くらいなら覚えてしまって損はないですよ!

このエントリーをはてなブックマークに追加

ルルが最近書いた記事

WRITERS POSTS もっと見る

他にもこんな記事が読まれています!

  • WEB
  • マーケティング
  • サーバー・ネットワーク
  • ライフスタイル
  • お知らせ