Как сопоставить что-либо после знака вопроса в регулярном выражении целей Google Analytics?
Я пытаюсь исправить отслеживание целей в Google Analytics для сайта электронной коммерции. Он работал до тех пор, пока один из шагов не был изменен. Ниже смотрите, что было установлено раньше и что теперь происходит после поиска.
До
- URL: website.com/Search/2343-5456-3423-5675
- Имя: Поиск
- Regex: /Search.*
настоящее время
- URL: website.com/Availability?value=abc&value=123&step=1
- Имя: Наличие
- Regex (не работает): /Availability?.*
Изменить 1:
Это междоменное отслеживание целей. Таким образом, пользователь заходит на веб-сайт А, и чтобы проверить, он щелкает и переходит на веб-сайт Б, где корзина должна что-то купить. Кросс-доменная настройка работает, и это сломалось только после изменения одного из шагов.
- Страница 1: website.com/
- Страница 2: website.com/Availability?value=abc&value=123&step=1
- Страница 3: website.com/Booking/Index/444-333-222-111
- Страница 4: website.com/Booking/ResortAndGuest/444-333-222-111
- Страница 5: website.com/Booking/Payment/444-333-222-111
Спасибо!
1 ответ
Решение
Некоторые наблюдения:
/*
выглядит сомнительным как регулярное выражение дляIndex
, Он будет соответствовать символу косой черты любое количество раз, включая ноль раз. Другими словами, это также ничего не будет соответствовать - см. Демонстрацию.- Как уже отмечали другие, чтобы соответствовать буквальному вопросительному знаку, его необходимо экранировать, поставив перед ним обратную косую черту - так
\?
вместо?
, Насколько я могу сказать,Availability(\?.*|$)
должен работать - см. демо. Вы уверены, что проблема не в другом месте? - Последние три регулярных выражения могут быть или не быть достаточными - если есть возможность чего-то вроде
/Booking/Indexer
например,/Booking/Index.*
регулярное выражение будет соответствовать этому, что может быть неправильно - см. демонстрацию. Чтобы исключить это, рассмотрите альтернативу, такую как/Booking/Index([/?].*|$)
- см. демо.