Google Analytics liefert eine Menge Daten und Berichte. Die meisten kommen in Form von Tabellen, die über 100.000 Zeilen enthalten können. Um darin etwas zu finden, reicht manchmal eine normale Textsuche nicht aus. Reguläre Ausdrücke erlauben komplexe Suchanfragen und können an vielen Stellen in Analytics eingesetzt werden.
Reguläre Ausdrücke sind keine spezielle Erfindung von Google Analytics, ihr könnt sie in vielen Programmen und Diensten verwenden, z.B. Data Studio, MySQL oder auch JavaScript. Der Einstieg lohnt also!
Was sind reguläre Ausdrücke?
Mit einem regulären Ausdruck (engl. regular expression oder kurz regex) könnt ihr komplexe Suchanfragen definieren. Es gibt eine Reihe Meta-Zeichen als Platzhalter und um Gruppen oder Mengen zu definieren. Damit geben reguläre Ausdrücke mehr Möglichkeiten als das übliche stimmt überein oder beginnt mit. Regex ermöglichen auch Suchen-und-Ersetzen-Regeln und sind damit ein mächtiges Werkzeug in der Arbeit mit Daten.
Ein paar häufig genutzte Beispiele:
Regulärer Ausdruck | Beschreibung |
192\.168\.[789]\. | Passt auf alle IP-Adressen aus dem Netzbereich 192.168.7., 192.168.8. und 192.168.9. jeweils mit den Stellen 1 bis 255. |
(www|blog)\.tirami\.biz | Passt auf die Hostnamen www.tirami.biz und blog.tirami.biz. |
\.pdf$ | Passt auf alle Dateien mit der Endung .pdf. |
/service/.*\.pdf$ | Passt auf alle Dateien mit der Endung .pdf im Verzeichnis /service oder einem Unterverzeichnis von /service. |
^/../service/ | Passt auf alle URLs, deren erstes Verzeichnis zwei Zeichen lang ist, zum Beispiel /de/service/ oder /en/service/ oder /it/service/, nicht aber auf /global/service/. |
^/[^i][^t]/service/ | Passt auf alle URLs mit einem Service-Verzeichnis, außer dem italienischen (it). |
/blog/\d+ | Alle Seiten im Verzeichnis /blog/, die mit einer Ziffer beginnen |
Wie definiere ich reguläre Ausdrücke in Google Analytics?
Bei einer Regex definiert ihr Platzhalter oder Gruppen mit Meta-Zeichen. Diese stehen in einer Regex, also nicht für das eigentliche Zeichen. Der Punkt . bedeutet etwa beliebiges Zeichen. Darum müsst ihr an vielen Stellen explizit angeben, dass ihr eine Regex verwendet und nicht einen einfachen Text-String.
Die wichtigsten Meta-Zeichen für reguläre Ausdrücke:
Zeichen | Beschreibung | Beispiel |
. |
Platzhalter für ein beliebiges Zeichen | t.rami passt auf die Zeichenketten tirami, tarami, torami und t6rami. |
* |
Vorheriges Zeichen beliebig oft wiederholt. Das Zeichen kann aber auch komplett fehlen. | ti*rami passt auf tirami, tiiiiiirami und trami. |
+ |
Vorheriges Zeichen beliebig oft wiederholt. Das Zeichen muss mindestens einmal vorkommen. | ti+rami passt auf tirami und tiiiirami, nicht jedoch auf trami. |
? |
Vorheriges Zeichen kann, muss aber nicht vorkommen. | ti?rami passt auf tirami und trami. |
| |
Zwei Zeichen können alternativ vorkommen. Entspricht einer Verknüpfung mit »oder«. | a|b passt auf a oder b. |
^ |
Folgende Zeichen müssen am Anfang der Zeichenkette stehen. | ^/service passt auf die Seite /service, nicht aber auf /kundenservice. |
$ |
Vorausgehende Zeichen müssen am Ende der Zeichenkette stehen. | produkte/$ passt auf /produkte/, aber nicht auf /produkte/weine/. |
( ) |
mehrere Zeichenketten gruppieren, zum Beispiel für eine Oder-Verknüpfung | (Rot|Weiss)wein passt auf Rotwein und Weisswein.
|
\ |
Hebt für das folgende Sonderzeichen die Meta-Funktion auf. Dadurch wird der Eintrag zu einem gewöhnlichen Zeichen. | tirami.biz passt zwar auf tirami.biz, aber auch auf tirami8biz. tirami\.biz dagegen passt nur auf tirami.biz (mit einem Punkt zwischen tirami und biz). |
Meta-Zeichen für Listen und Zeichenklassen:
Zeichen | Beschreibung | Beispiel |
[ ] |
Liste von Zeichen, die an dieser Stelle in der Zeichenkette stehen können. Kann mit *, + und ? verwendet werden. | t[iao]rami passt auf tirami, tarami und torami.
t[iao]+rami passt auf tirami, tiiiirami, aber auch auf tiaoiaoirami. |
- |
Innerhalb von Listen zeigt das Minus einen Bereich von zusammenhängenden Zeichen an. | [A-Z] entspricht einer Liste mit allen Großbuchstaben des Alphabets. |
^ |
Innerhalb einer Liste wird das folgende Zeichen als negativ gewertet, das heißt, es darf nicht an dieser Stelle stehen. | t[^i]rami passt auf tarami und torami, aber nicht auf tirami. |
\d |
eine beliebige Ziffer 0 bis 9 | 12\d passt auf 123, auf 124 und 128. Nicht aber auf 12A |
\D |
Zeichen, dass keine Ziffer ist | 12\D passt auf 12B aber nicht auf 128 |
\w |
Buchstabe, Ziffer oder Unterstrich | |
\W |
Zeichen, dass weder Buchstabe, Ziffer noch Unterstrich ist | in URLs passt \W etwa auf # oder ? |
\s |
whitespace – Leerzeichen oder Tab | Regulärer\sAusdruck passt auf Regulärer Ausdruck |
\S |
jedes Zeichen, dass kein Leerzeichen ist |
Wo kann ich reguläre Ausdrücke in Google Analytics nutzen?
Google Analytics erlaubt den Einsatz von regulären Ausdrücken an einigen Stellen:
Tabellen Filter
Bestimmt kennt ihr das Suchfeld, das über den meisten Berichten in GA erscheint:
Hier könnt ihr einen Text eingeben und GA sucht alle Zeilen heraus, in denen dieser Text vorkommt. Bei einem Klick auf Erweitert kann man weitere Such-Optionen auswählen, unter anderem eben auch Entsprechende RegExp.
Tipp: Das Suchfeld erkennt automatisch, wenn ein regulärer Ausdrück eingegeben wird. Ihr müsst also nicht erst auf Erweitert gehen und das Menü umstellen. Ein regulärer Ausdruck ohne Meta-Zeichen wird wie ein „enthält“ verarbeitet.
Segmente
In Segmenten lassen sich mehrere Bedingungen für eine Definition nutzen, z.B. wenn ihr nach zwei Städten suchen wollt:
Dieses Segment ist definiert als Nutzer, die aus Köln oder München kommen. Dieses ODER lässt sich auch mit einer Regex ausdrücken:
Der senkrechte Strich bedeutet soviel wie entweder der Text, der links von mir steht oder der rechts von mir steht muss passen. Mit zwei Einträgen macht es das Eingeben noch nicht viel einfacher, ihr könnt aber beliebig viele Elemente in einer Reihe auflisten. Bei vielen Einträgen spart das einige Klickerei.
Dashboard Widgets
In den klassischen GA Dashboards kann für jedes Widget ein Filter als Regex hinterlegt werden.
Wie bei den Segmenten könnt ihr zwar mehrere Filter hinzufügen. Allerdings sind diese Filter immer mit UND verknüpft. Eine Zeile Nur Cologne und eine Zeile Nur Munich schließen sich gegenseitig aus. Mit einer Regex könnt ihr eine ODER-Liste realisieren.
Benutzerdefinierte Berichte
In Benutzerdefinierten Berichten könnt ihr einen Regex als Filter definieren, der die angezeigten Daten einschränkt.
Fun Fact: Hier heißt es im Menü RegEx, während es bei Segmenten regulärer Ausdruck heißt und im Tabellen-Suchfeld RegExp.
Zielvorhaben
Bei der Definition eines Zielvorhaben lässt sich ein regulärer Ausdruck angeben. Das ist vor allem praktisch, wenn ihr mehrere Seiten / URLs in einem Ziel zusammenfassen möchtet.
Der Ausdruck „/jobs/[a-z ]“ beschreibt alle Seiten, die innerhalb des Ordners /jobs/ liegen – in diesem Fall die Stellenangebote.
Übrigens: Wählt ihr für das Ziel Regulärer Ausdruck könnt ihr in den Schritten des (optionalen) Trichters ebenfalls Regex angeben.
Tipp: Testet euer Filtermuster für ein Ziel im Suchfeld des Seiten-Berichts. Dort sollten alle Seiten im Ergebnis kommen, die ihr als Ziel haben wollt.
Filter
Mit Filtern könnt ihr die einlaufenden Daten einer Datenansicht kontrollieren. Ihr könnt
- nur ausgewählte Daten in die Datenansicht einlaufen lassen
- bestimmte Daten ausschließen
- Daten verändern
Beim Filtertyp Benutzerdefiniert werden die Filtermuster mit regulären Ausdrücke definiert. Um die Filter Suchen und Ersetzen und Erweitert zu verwenden müsst ihr zwangsläufig mit Regex arbeiten.
Übersetzt bedeutet dieser Filter:
- Nimm alles (.*), was in Feld A (Hostname) steht
- Nimm alles (.*), was in Feld B (URI) steht
- und schreibe beides $A1 und $B1 nacheinander wieder die URI
Zielgruppen
Zielgruppen funktionieren nahezu identisch zu Segmenten und erlauben als Bedingung reguläre Ausdrücke.
Content Gruppen
Content Gruppierungen erlauben euch, bestimmte Seiten zusammenzufassen und gemeinsam zu betrachten. Ihr könnt eine Gruppe mit mehreren Regeln definieren oder eine Regex verwenden (oder beides kombinieren).
Die Regex „/blog/\d+“ beschreibt alle Seiten, die „/blog/“ enthalten und direkt danach mindestens eine Ziffer „\d+“ folgt.
Channel Gruppen
Die Channel Gruppierungen fassen verschiedene Quellen zusammen, um so die Nutzer gemeinsam zu betrachten. Auch hier könnt ihr reguläre Ausdrücke verwenden.
Hinweis: Bei Channel-Definitionen funktionieren die Regex etwas anders als in den anderen Fällen. Für Channel muss das angegebene Muster auf die komplette Quelle (Medium, usw.) passen. Es reicht nicht, dass nur ein Teil passt. So passt google nur auf die Quelle google, nicht aber auf google.com
Fazit
Mit regulären Ausdrücken könnt ihr genauer Muster definieren als mit einem einfachen enthält oder beginnt mit Filter. In vielen Fällen ist die Verwendung einer Regex schneller als mehrere Textfilter zu kombinieren. Manche Anforderungen lassen sich sogar nur mit Regex umsetzen, etwas Suchen-und-Ersetzen-Filter. Nicht nur Google Analytics versteht reguläre Ausdrücke, auch andere Google Tools und viele weitere Services können mit ihnen umgehen. Es lohnt sich also die Mühe, sie zu erlernen 🙂
Photo by Selin Şahin on Unsplash