Mariusz Gąsiewski

Wyrażenia regularne w Google Analytics

Ważnym elementem efektywnego wykorzystywania możliwości Google Analytics; zwłaszcza przy pracy z definiowanymi Ścieżkami celu i Celami oraz filtrami jest zrozumienia zasad działania tzw. wyrażeń regularnych.

Wyrażenia regularne służą do dopasowywania lub znajdowania określonych danych w obrębie Google Analytics, zadań związanych z przetwarzaniem tekstu i definiowaniem reguł, które określają zakres zbierania danych przez Google Analytics.

Wyrażenia regularne w Google Analytics - wykorzystanie
Wyrażenia regularne w Google Analytics - wykorzystanie

Zastosowanie wyrażeń regularnych można zaobserwować przy okazji takich filtrów jak ten opisany w poście Google Analytics i śledzenie AdWords.

Podstawowa składnia wyrażeń regularnych w Google Analytics

  • Znak kropki „.”

    Znak kropki powoduje dopasowanie każdego ciągu znaków do wyrażenia przed i po kropce. W przypadku zapisu (.*) system zwraca dowolny ciąg znaków po wyrażeniu (dowolną ilość).

    Przykład
    Użycie kropki w wyrażeniu google.pl spowoduje, że system dopasuje do wyrażenia dowolny znak po “google” (np. google.pl, googleapl, googlebpl) jako, że system odczytuje to jako google(dowolny znak zamiast kropki)pl.

  • Nawias okrągły „()”
    Symbol ten można skojarzyć z znakiem mnożenia wartości przez każdy element danych w nawiasie (znana z podstawowej szkoły rozdzielność mnożenia względem dodawania.

    Przykład
    Wyrażenie: index\. (htm | html | php) to dokładnie to samo, co: index\.htm | index\.html | index\.php (tak jakbyśmy mnożyli przez każdy element z nawiasu)

  • Znak plusa „+”
    Symbol ten zwraca dopasowanie co najmniej jednego poprzedzającego elementu zbioru. Inaczej mówiąc znak „ +” sprawia, że system bierze pod uwagę każdą wartość, gdzie mamy przynajmniej jedno wystąpienie znaku poprzedzającego znak +.

    Przykład
    Przy użyciu znaku „+” przy przykładowym wyrażeniu „strona+s” system bierze pod uwagę takie wyrazy jak: „stronas”,„stronaas”, „stronaaas”, „stronaaaas”

  • Znak zapytania „?”
    Symbol ten oznacza dopasowanie zera lub jednego poprzedzającego elementu. Dopuszcza pojedyncze występowanie elementu poprzedzające znak „?” lub też brak występowania elementu poprzedzającego znak „?”.

    Przykład
    Przy użyciu znaku „?” przy przykładowym wyrażeniu „strona?s” system bierze pod uwagę takie wyrazy jak:”strons”, „stronas”

  • Znak gwiazdki „*”
    Symbol ten zwraca dopasowanie zerowej i większej od zera ilości powtórzeń poprzedzającego elementu zbioru. Inaczej mówiąc znak – sprawia, że system bierze pod uwagę każdą wartość, gdzie mamy 0 lub więcej wystąpień znaku poprzedzającego znak *.

    Przykład
    Przy użyciu znaku „*” przy przykładowym wyrażeniu „strona?s” system bierze pod uwagę takie wyrazy jak:”strons”, „stronas”,„stronaas”, „stronaaas”, „stronaaaas”

  • Nawias kwadratowy „[]”
    Znak nawiasu kwadratowego pozwala zwracać każdy element z listy wewnątrz nawiasu.

    Przykład
    Wyrażenie stronax, stronay, stronaz może być zapisana w postaci: strona[xyz]

  • Znak minusa „-„
    Znak minusa umożliwia tworzenie zakresu w liście.

    Przykład
    Jeżeli chcemy zapisać „strona[12345678]” możemy to również zapisać pod postacią „strona[1-8]”

  • Symbol pionowej kreski „|”
    Symbol ten jest odpowiednikiem wyrażenia “lub”

    Przykład
    \.(gif|jpg|png) – system bierze pod uwagę każdy plik, który jest bądź plikiem .gif, .jpg i .png,

  • Symbol „^”
    Symbol ten zwraca dopasowanie od początku pola. Mówiąc prosto symbol ten oznacza “Zaczyna się od..”

    Przykład
    ^ http://www.mojawitryna.pl/– system bierze pod uwagę wszystkie adresy, które zaczynają się od http://www.mojawitryna.pl

  • Symbol dolara „$”
    Symbol ten zwraca dopasowanie od początku pola. Mówiąc prosto symbol ten oznacza “Kończy się na..”

    Przykład
    ./katalog/$ – bierze pod uwagę wszystkie adresy, które kończą się na znakach /katalog/

  • Symbol „?=”
    Symbol ten jest równoważne wyrażeniu „musi zawierać”

    Przykład
    ?=.*agd- bierze pod uwagę wszystkie wyrażenia, które zawierają w sobie „agd”, np. „sprzęt agd”, „urządzenia agd”

  • Symbol „?!”
    Symbol ten jest równoważne wyrażeniu „nie może zawierać”

    Przykład
    ?!.*agd- bierze pod uwagę wszystkie wyrażenia, które nie zawierają w sobie „agd”, np. „pralki”, „lodówki”

  • Nawias „{}”
    Nawias ten dopuszcza powtarzanie znaku znajdującego się przed nawiasem określoną liczbę razy. W nawiasie są dwie liczby: jedna określa minimalną liczbę powtórzeń, druga maksymalną liczbę powtórzeń.

    Przykład
    podstrona1{2,4}r– te wyrażenie zwraca wszystkie dane zawierające „podstrona” wraz z jedynką występującą przynajmniej 2 razy i nie więcej niż 4 razy. W tej sytuacji będą to więc wyrazy: „podstrona11”, „podstrona111”, „podstrona1111”.

  • Symbol ukośnej kreski „\”
    Symbol ten oznacza anulowanie znaczenia wszystkich powyższych symboli . Część znaków wyrażeń regularnych jest też stosowana w życiu codziennym, czego najlepszym przykładem jest znak kropki, który jest jednym z elementów adresów URL. W przypadku, kiedy chcemy przekazać systemowi Google Analytics, że określonego znaku nie stosujemy w funkcji wyrażenia regularnego powinniśmy poprzedzić ten znak odwrotną kreską ułamkową „\”.

    Przykład
    Kiedy podajemy adres internetowy www.jakasstrona.pl do interfejsu Google Analytics powinniśmy zapisać go w postaci: www\.jakasstrona\.pl w innym przypadku system odczyta to jako adres www(dowolny znak)jakastrona(dowolny znak)pl.

Przykłady wyrażeń regularnych

  • Zawrzeć dane o podstronach zawierających w nazwie „dvd” o rozszerzeniu „php” lub”html”
    [code lang=”php”]
    dvd\.(php|html)</li>
    [/code]

  • Zawrzeć dane o podstronach zaczynających się od wyrazu „podstrona”, kończących się na „.htm”, zawierających przynajmniej jedną cyfrę i nie więcej niż 4 w adresie url
    [code lang=”php”]
    podstrona[0-9]{1,4}\.htm</li>
    [/code]

  • Chcemy zebrać dane o podstronach stworzonych według następującego schematu:

    • http://www.strona.pl/ksiazki/579557.html?sesja=12345
      http://www.strona.pl/ksiazki/589558.html?sesja=12345
      (w nazwie jest katalog „książki”, numer zaczynający się od „57” bądź „58” i nazwa sesji)
    • http://www.strona.pl/albumy/779577.html?sesja=12345
      http://www.strona.pl/albumy/789578.html?sesja=12345
      (w nazwie jest katalog „albumy”, numer zaczynający się od „77” bądź „78” i nazwa sesji)

    Wyrażenie takie może mieć postać:
    [code lang=”php”]
    /(ksiazki/57|ksiazki/58|albumy/77|albumy/78).*\.html\?sesja=.*
    [/code]

  • Chcemy znaleźć wszystkie słowa kluczowe, które zawierają wyraz „tanie” i wyraz „pralki”, ale nie zawierają wyrazu „agd”.

    W tej sytuacji wyrażenie może wyglądać następująco:
    [code lang=”php”]
    ^(?=.*tanie)(?=.*pralki) (?!.*agd).*$
    [/code]

Testowanie wyrażeń regularnych

Przed wprowadzeniem wyrażenia regularnego warto je przetestować na jednym z wielu dostępnych testerów wyrażeń regularnych, które można znaleźć w sieci:

Wyrażenie regularne – przydatne materiały

Jeżeli ktoś pracuje nad stworzeniem jakiegoś wyrażenia regularnego na potrzeby Google Analytics, może napisać o tym w komentarzu. Spróbuję wówczas pomóc w miarę moich umiejętności i możliwości :).

W przypadku, kiedy uznasz strone za przydatna dodaj na swojej stronie link do niej.
Po prostu skopiuj i wklej link podany nizej (Ctrl+C to copy)
Wyglad linku po wklejeniu na stronie: Wyrażenia regularne w Google Analytics

Dodaj link do:
| | | Y! MyWeb | +Google

11 komentarzy to “Wyrażenia regularne w Google Analytics”

  1. Adrianon 03 lut 2008 at 20:07

    Bardzo ciekawy i wartościowy artykuł. Wyjaśnił mi wiele rzeczy. Dzięki!

  2. adminon 03 lut 2008 at 22:17

    Cieszę się, że artykuł się podoba (chociaż jego długość może przerażać). Zapraszam do dalszego czytania bloga :).

  3. […] pola raportu z jednego lub dwóch innych pól, na których wykonywane są działania przy użyciu wyrażeń regularnych. W ten sposób możemy tworzyć raporty ujmujące dokładnie te dane, które nas najbardziej […]

  4. […] o użyciu w polu Adres IP wyrażeń regularnych, o których informację znajdziesz w poście Wyrażenia regularne w Google Analytics. Przykład 2 Zastosowanie filtru do wszystkich adresów IP z zakresu od 192.168.1.1 do 192.168.125 […]

  5. […] pola raportu z jednego lub dwóch innych pól, na których wykonywane są działania przy użyciu wyrażeń regularnych. W ten sposób możemy tworzyć raporty ujmujące dokładnie te dane, które nas najbardziej […]

  6. […] niemal wszystkie opcje oznaczania danych, do korzystania z których konieczna była wcześniej znajomość wyrażeń regularnych. Obecnie wystarczy określić wyrażony słownie warunek ograniczania danych (np. aby znaleźć […]

  7. […] niemal wszystkie opcje oznaczania danych, do korzystania z których konieczna była wcześniej znajomość wyrażeń regularnych. Obecnie wystarczy określić wyrażony słownie warunek ograniczania danych (np. aby znaleźć […]

  8. Bartek Berlinskion 21 maja 2009 at 10:17

    Hej Mariusz,

    Przez przypadek trafiłem na tą stronę i powiem ci że osobiście wrzuciłbym ten tekst w pdf’a dodał kilka bardziej skomplikowanych przykładów z wyjaśnieniem i zrobiłbym kilkustronicowy tutorial „Wyrażenia regularne w Google Analytics” 🙂

  9. Mariusz Gąsiewskion 21 maja 2009 at 21:25

    Dzięki za pomysł. Faktycznie chyba z niego skorzystam 🙂

  10. […] się wyrażeniami regularnymi (ang. regular expresions). Więcej na ten temat znajdziesz na blogu Mariusza Gąsiewskiego. Bez wchodzenia w szczegóły wpisujemy „conversion.pl” dla domeny naszego bloga. Aby […]

  11. […] a później napisać odpowiadające mu wyrażenie regularne (więcej na ten temat znajdziesz na blogu Mariusza Gąsiewskiego) lub bazować na powyższym […]