Регулярные выражения
Регулярные выражения могут использоваться при определении целей Посещение страниц, Составная цель, JavaScript-событие, а также при сегментировании по условиям, в которых фигурируют URL (например, источники трафика).
Примечание
При настройке цели типа «JavaScript-событие» регулярное выражение должно содержать только значение идентификатора (без домена и протокола сайта).
Пример
Чтобы отследить нажатие кнопки с идентификатором, который содержит button или buy, в качестве условия можно указать button|buy.
Выражения обрабатываются в соответствии с синтаксисом RE2 и следующими правилами:
- Регулярное выражение применяется к полному URL страницы, включая протокол и домен. Например, вы можете использовать регулярное выражение: ^http://.
- Регулярное выражение применяется дважды: к оригинальному URL и к URL с префиксом wwwи без него. Благодаря этому результат проверки выражения не зависит от наличия префиксаwwwв домене.
- Регулярное выражение применяется к декодированному URL, в котором URL-коды (%-последовательности) заменены на декодированные символы (исключение: коды символов /,&,=,?,#не заменяются; например,%2Fне будет заменен на/). Необходимо иметь в виду, что при декодировании символ+заменяется на пробел. Например, регулярное выражениеtext=слонбудет обработано, аtext=%D1%81%D0%BB%D0%BE%D0%BDиtext=%\w\w— нет.
- К кириллическим URL не применяется punycode. Например, регулярное выражение ^http://ввв\.сайт\.рф/будет обработано, а^http://xn--b1aaa\.xn--80aswg\.xn--p1ai/— нет.
- Перед проверкой регулярных выражений из окончания URL исключаются символы ?, #, & и точка (.). Например, для URL http://example.com/?,http://example.com/#,http://example.com/?var=1&сравнение будет производиться сhttp://example.com/,http://example.com/,http://example.com/?var=1соответственно. В случае, если пользователь ввел URLhttp://example.com./, то регулярное выражение\./$не будет обработано.
- При проверке регулярных выражений квантификаторам соответствует максимально длинная строка.
- Проверка производится с учетом регистра символов в URL.
Памятка по регулярным выражениям
В таблице ниже a, b, c, d, e — любые символы, n, m — целые положительные числа.
| Допустимые варианты | |
| abc|de | Соответствует одному из вариантов:  | 
| Классы символов | |
| [abc] или [a-c] | Соответствует любому (одному) символу из перечисленных (или из диапазона) | 
| [^abc] или [^a-c] | Соответствует любому (одному) символу, кроме перечисленных (не входящему в диапазон) | 
| \d | Соответствует цифровому символу. Эквивалентно  | 
| \D | Соответствует символу, не являющемуся цифрой. Эквивалентно  | 
| \s | Соответствует пробелу. Эквивалентно  | 
| \S | Соответствует символу, не являющемуся пробелом. Эквивалентно  | 
| \pL | Соответствует любому символу Unicode | 
| \w | Соответствует латинской букве любого регистра, цифре или знаку подчеркивания. При работе с символами Unicode вместо \w используйте класс  | 
| \W | Соответствует любому символу, отличному от латинской буквы любого регистра, цифры или знака подчеркивания. При работе с символами Unicode вместо \w используйте класс  | 
| Количество вхождений (квантификаторы) | |
| a* | Соответствует символу  | 
| a+ | Соответствует символу  | 
| a? | Соответствует символу  | 
| a{n,m} | Соответствует символу  | 
| a{n,} | Соответствует символу  | 
| a{n} | Соответствует символу  | 
| a*? | Соответствует символу  | 
| a+? | Соответствует символу  | 
| a?? | Соответствует символу  | 
| a{n,m}? | Соответствует символу  | 
| a{n,}? | Соответствует символу  | 
| Позиция внутри строки | |
| ^ | Соответствует началу строки | 
| $ | Соответствует концу строки | 
| \b | Соответствует границе слова — позиции между алфавитно-цифровым символом ( | 
| \B | Соответствует отсутствию границы слова. Определяется через классы  | 
| Экранирование | |
| \ | Обратная косая черта перед специальным символом  Пример:  | 
| \Q...\E | Все специальные символы в интервале между  |