Как настроить страницу благодарности в Google Analytics с РЕГУЛЯРНЫМ ВЫРАЖЕНИЕМ?

#regex #google-analytics

#регулярное выражение #google-analytics

Вопрос:

Я хотел бы отслеживать в Google Analytics приведенную ниже страницу благодарности с РЕГУЛЯРНЫМ ВЫРАЖЕНИЕМ. Приведенная ниже страница благодарности будет отличаться в зависимости от названия загружаемого файла (заголовок-содержимое). Следовательно, какое регулярное выражение мне нужно для подсчета конверсии независимо от названия загружаемого файла?

/ru/media/download/title-content/спасибо

Ответ №1:

Предположим, вы пытаетесь найти путь, который указали.

Что-то вроде этого может сработать:

^/en/media/download/[^/] /thanks$

Здесь я использую [^/] вместо . , потому что мы хотим сопоставлять только символы, которые не являются косой чертой, поскольку я предполагаю ^/en/media/download/blah-blah/not/thanks$ , что они не должны совпадать.

Однако это зависит от того, какой язык вы используете. Этот ответ может варьироваться в зависимости от того, делаете ли вы это в файле конфигурации Apache, скрипте PHP, Javascript или чем-то еще.

Кроме того, «якоря» (^ и $) заставляют совпадение начинаться с начала строки и заканчиваться в конце, поэтому foo/en/media/download/bar/thanks/baz совпадать не будут. Удалите одно или оба по мере необходимости.

Кроме того, в зависимости от вашего механизма регулярных выражений, / символы могут потребоваться экранировать, заменив каждый из них на / вместо (очевидно, не требуется для Google Analytics!)

Кроме того, в зависимости от вашего механизма регулярных выражений вам может потребоваться поместить символ в начало и конец регулярного выражения, и вам может потребоваться заключить его в кавычки. Например, в PHP вы бы использовали что-то вроде: if (preg_match('#^/en/media/download/[^/] /thanks$#', $_SERVER['REQUEST_URI'])) { /* do stuff here. */} (также, по-видимому, не требуется для Google Analytics!)


Благодаря комментарию @kbelder, вы можете рассмотреть что-то подобное, если вы сравниваете весь URI запроса:

^/en/media/download/[^/] /thanks/?([#?].*)?$

  • /? — Необязательная косая черта в конце.
  • [#?] — хэш или вопросительный знак.
  • .* — Любое количество дополнительных символов.
  • ([#?].*)? — Необязательные параметры получения или идентификатор привязки.

Это означало бы, что он будет соответствовать:

  • /en/media/download/blah/thanks/?name=fred
  • /en/media/download/blah/thanks#credits

но не:

  • /en/media/download/blah/thanks/name/fred
  • /en/media/download/blah/thanks/credits

Комментарии:

1. Я знаком с сопоставлением регулярных выражений в Google Analytics, и я думаю, что ваш код должен работать нормально. Для этого не нужно экранировать «/». Я мог бы не включать «$» в конец строки, потому что в URL-адресах иногда добавляются параметры, которые вы хотели бы игнорировать в этом случае.

2. Спасибо, @kbelder! Я мог бы утверждать, что просто не был уверен, какой язык или механизм регулярных выражений использует Google Analytics, но я должен быть честным и признать, что я как-то полностью пропустил тег Google Analytics … и в названии … и в вопросе. Я просто пойду позорно ползать под этим удобным камнем, сейчас…