Googleアナリティクス、正規表現を使いURL別のランキングを見る

反響を得る為の効率よい施策を考える第一歩

行動セクションのレポート画面で見れる数字は、どのページがどのぐらい見られているかや、気になるページの直帰率や滞在時間などを見たいなど、重要なページにどのくらい訪問されているかなどの、指標順に並べ替えることが出来る重要なページです。
この指標順に並べ替えられたページを見ることで
「このページがよく見られているので、このページヘ施策を打てば成果へと繋がるんじゃないか♪」
と言う感じで、より確度の高いサイト運用が可能になります。

行動セクションのレポート画面(URLごとのランキング)の見方

Image Capation

初期画面

通常の絞込

「行動」→「サイトコンテンツ」→「すべてのページ」で見ることが可能です。(※画像の赤枠)初期画面では、全てのURLのページビュー数の多い順番でランキングされています。
「ページビュー数」や「直帰率」といった項目名をクリックすることで逆順でソートすることも可能です。(※画像のオレンジ枠)

Image Caption

通常の絞込

通常の絞込

ここでURLをキーワードで絞り込んでリスト化するには、検索ボックスに(※画像の青枠)「info」と入力して虫眼鏡ボタンをクリックします。
「/free/param=info」といったURLも引っかかってしまうので、その際は「/info/」などスラッシュ付きにするとか検索に工夫を掛けましょう。

Image Capation

正規表現で複雑なURL構成に対応する

正規表現で複雑なURL構成に対応する

URLが「/w123/」みたいな感じで、数字部分がコンテンツのユニークなIDなっているケースが多々有ります。
そのさいは、正規表現というパターンマッチを使って、絞り込みます。結論から言いますと。
^/w+[0-9]+/
で、検索してあげると、取得することが出来ます。
また、URLが「/w123/web/」みたいな感じで、数字の後に続くディレクトリ名を固定したい場合は、
^/w+[0-9]+/web
で、検索することが出来ます。

正規表現ってなによ?

ABCdefgなどの通常の文字と、特殊文字(メタキャラクタ)で構成された文字列のパターンです。パターンによって、テキスト本文を検索するときに一致する1つ以上の文字列を指定します。正規表現は、検索対象の文字列と文字パターンを一致させるためのテンプレートとして機能します。

つまり、同じパターンで作られた文字を見つけ出すことが出来るということです。
逆に同じパターンで作られているかを判定することも出来ます。

例えば、メールアドレスです。
info@adan.jp.net
メールアドレスのパターンを正規表現表でシンプルに表すと
/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/
こんな感じになります。恐ろしくムズいっすね。。。本来はもっともっと長く複雑です。
ざっくりというと、「@」マークの左側は英数字で「.」ドットと「+」文字のみで構成されているか、「@」マークの右側は英数字で「.」ドットが1つ以上あるかどうかをチェックしています。

どんなときに使うの?

主に、検索する時とチェックするときに使います。
検索する時とは、先ほどのURLで絞り込んだりする場合です、その他にも、Googleの検索やGmailのメール内検索などでも使えます。

チックする時とは、例えばログインや会員登録などのユーザからの入力があるWebサイトででも使います。
ユーザが入力してきたメールアドレスが、本当に正しいかとか、電話番号は本当に正しいかとか、正しくない場合はエラーメッセージを返して、登録させないように処理します。

その他代表的なメタキャラクタ

\ 次に続く文字が特殊文字、リテラル、後方参照、または 8 進エスケープであることを示します。たとえば、”n” は文字 “n” と一致します。’\n’ は改行文字と一致します。”\\” は “\” と、”\(” は “(” と一致します。
^ 入力文字列の先頭と一致します。RegExp オブジェクトの Multiline プロパティが設定されている場合、^ は ‘\n’ または ‘\r’ の直後にも一致します。
$ 入力文字列の末尾と一致します。RegExp オブジェクトの Multiline プロパティが設定されている場合、$ は ‘\n’ または ‘\r’ の直前にも一致します。
* 直前のサブ式と 0 回以上一致します。たとえば、”zo*” は “z” とも “zoo” とも一致します。* は {0,} と同じ意味になります。
+ 直前のサブ式と 1 回以上一致します。たとえば、”zo+” は “zo” や “zoo” とは一致しますが、”z” とは一致しません。+ は {1,} と同じ意味になります。
? 直前のサブ式と 0 回または 1 回一致します。たとえば、”do(es)?” は “do” または “does” の”do” と一致します。? は {0,1} と同じ意味になります。

ここまでみるとだいぶ難しいですね。正直、正規表現を完全に使いこなしてるプログラマーはあまりいないです。。。
ですが、よく使いそうなやつを覚えるだけで結構作業が捗ったりしますので、気に止まった使えそうな正規表現をちょくちょく記事にしていければと思います。