Quantcast
Channel: Web担当者Forum
Viewing all articles
Browse latest Browse all 19485

正規表現でタグの配信条件を設定する、超上級のタグ管理ワザ(全20回の13) | 実践 Googleタグマネージャ入門 | Web担当者Forum

$
0
0
書籍の4-6<AND条件/OR条件>より(このコーナーでは、電子書籍『実践 Googleタグマネージャ入門』の内容の一部を、Web担の読者向けに特別にお届けしています)

記号で条件を表現できる

これまでのトリガーでは、演算子に「等しい」や「含む」、「先頭が一致」などを選択してきました。それ以外の選択肢に「正規表現に一致」(「正規表現に一致しない」)というものがあります。この演算子を選択すると、条件の設定に「正規表現(Regular Expression)」を使えるようになります。

正規表現とは、決められた記号を使って特殊な条件を表す文法のことです。例えば「/category/megane/」というパスと「/category/contactlens/」というパスがあったとします。この2つのディレクトリにタグを配信したい場合は、4-5で解説したように通常は別々のトリガーとして登録することになります。しかし、別々のトリガーとして登録すると数が膨大になってしまう場合などは後から見づらくなってしまうため、「できれば1つのトリガーにまとめたい」と思う場合もありますよね。そういうときに使うのが正規表現で、この例であれば「/category/(megane|contactlens)/」と記述すると、2つのディレクトリを表現できるのです。

v20406a
演算子で「正規表現に一致」を選択して、値に正規表現を記述する。

●正規表現で2つのディレクトリを指定する例

/category/(megane|contactlens)/

この例では、「()」が「この中では」という範囲を、「|」(パイプ)が「または」という意味を表しています。つまり、「()」内は「meganeもしくはcontactlens」という意味になるので、この正規表現では「/category/megane/」または「/category/contactlens/」という意味を表しています。正規表現では、このように記号を使って条件を表現します。

覚えておくと便利な正規表現

正規表現は、Googleタグマネージャに限らずいろいろなテキストエディタの検索機能であったり、Googleアナリティクスの絞り込みなどの一部機能でも利用可能です。インターネットで「正規表現」と検索すればたくさんの解説ページが見つかりますが、使用できる条件や記号はとても多岐にわたり、なじみのない人には少々使いづらいものであることも確かです。

そこで、ここでは特にGoogleタグマネージャのトリガー作成で利用できそうな記号と例文をまとめたので、参考にしてみてください。

●「^」(ハット)=「先頭」を表す

^/category/example/解説 「/category/example/」で始まるもののみが一致する。「先頭が一致」の場面で使う。

●「$」(ダラー)=「末端」を表す

/category/example/$解説 「/category/example/」で終わるもののみが一致する。「最後が一致」の場面で使う。

●「()」(パーレン)=「範囲」を表す/「|」(パイプ)=「または」を表す

/category/(megane|contactlens)/解説 「/category/megane/」または「/category/contactlens/」の2つのパターンが一致と見なされる。「|」の区切りは何個あってもいいので、「/category/(megane|contactlens|sunglasses)/」のように記述することも可能。

●「.」(ピリオド)=「任意の1文字」を表す/「*」(アスタリスク)=「0文字以上の繰り返し」を表す

.*解説 「.」が「何でもいいから1文字、「*」が0回以上の繰り返し(0も含む)なので、「何でもいい(無条件で一致)」という意味になる。Googleタグマネージャでは「すべてのページ」のトリガーがこれにあたる。正規表現ではよく使われる表現。

●「?」(クエスチョン)=「直前の文字があってもなくてもいい」を表す

(/mobile)?/category/解説 直前を()でひと固まりにしているため、「/mobile/category/」と「/category/」の2つのパターンが一致と見なされる。

●「-」(ハイフン)=「数値や文字列の範囲」を表す

(0-9)解説 「0~9のいずれかの数値」が一致と見なされる。また、「a-z」とした場合は「A~Zのアルファベット」が一致と見なされる。

上記で挙げたものは、それぞれ組み合わせることができます。例えば商品詳細ページのURLが「/category/(カテゴリ名)/(商品ID)/」で、レコメンドページだと末尾が「/(またはindex.html)」から「/recomend.html」に変わるようなWebサイトの場合、以下のように記述すると、「『megane』もしくは『contactlens』どちらかのカテゴリーに属するすべての商品の詳細ページまたはレコメンドページ」といった複雑な条件も1行で指定できます。

ここで紹介した記号以外にもさまざまなものがあるので、より複雑な条件を作りたい場合は詳しく調べてみることをおすすめします。

●正規表現を組み合わせた例

^/category/(megane|contactlens)/[0-9]*(/|/index\.html|/recomend\.html)?$解説 「megane」または「contactlens」カテゴリーに属するすべての商品IDのインデックページまたは「recomend.html」のページ。
「\」(バックスラッシュ)は何?

正規表現では「.」などの記号は「メタ文字」と呼ばれ、特別な意味を表します。ただ、上の例の「index.html」のように文字列としての「.」を表現したい場合は、直前に「\」を付けて「\.」と記述することで、正規表現の記号としてではなく文字列としての「.」という意味になります。「.」以外のほかの記号も同様で、文字列にしたい場合は「\」を直前にくっつけて記述します。この「\」とその後ろの記号を含めて「エスケープ文字」と呼びます。

※このコンテンツはWebサイト「Web担当者Forum - 企業ホームページとネットマーケティングの実践情報サイト - SEO/SEM アクセス解析 CMS ユーザビリティなど」で公開されている記事のフィードに含まれているものです。
オリジナル記事:正規表現でタグの配信条件を設定する、超上級のタグ管理ワザ(全20回の13) | 実践 Googleタグマネージャ入門 | Web担当者Forum
Copyright (C) IMPRESS CORPORATION, an Impress Group company. All rights reserved.

この記事の筆者

畑岡大作(はたおかだいさく)

アユダンテ株式会社、マークアップエンジニア。モバイルサイトの運営アシスタントからパソコン向けWebサイトの運営・制作までを経て、2008年よりアユダンテ株式会社に入社。現在はHTML+CSSのマークアップエンジニアとして、SEOコンサルティングの一環であるHTMLテンプレート作成、および自社サイトの運営から制作まで携わるほか、Googleタグマネージャの導入支援や設定サポートなどにかかわる。


Viewing all articles
Browse latest Browse all 19485

Trending Articles