Reguläre Ausdrücke („Regexp“) sind bestimmte Zeichenfolgen, die weitgehend oder genau mit Mustern in Ihren Daten übereinstimmen. Mit ihnen lassen sich flexiblere Filter in Diagrammen und Steuerelementen erstellen. Darüber hinaus besteht die Möglichkeit, die folgenden Funktionen für reguläre Ausdrücke in Formeln für berechnete Felder zu verwenden:
REGEXP_CONTAINS | Gibt „wahr“ zurück, wenn der Eingabewert das Muster des regulären Ausdrucks enthält. Andernfalls wird „falsch“ zurückgegeben. Weitere Informationen |
REGEXP_EXTRACT | Gibt den ersten Teilstring im Eingabewert zurück, der mit dem Muster des regulären Ausdrucks übereinstimmt. Weitere Informationen |
REGEXP_MATCH | Gibt „true“ zurück, wenn der Eingabewert mit dem Muster des regulären Ausdrucks übereinstimmt. Andernfalls wird „false“ zurückgegeben. Weitere Informationen |
REGEXP_REPLACE | Ersetzt alle Textstrings im Eingabewert, die mit dem Muster des regulären Ausdrucks übereinstimmen, durch den Ersatzstring. Weitere Informationen |
Alternativen zur Verwendung regulärer Ausdrücke
Das Erstellen regulärer Ausdrücke kann komplex sein. Bevor Sie eine Regexp-Funktion verwenden, sollten Sie überlegen, ob Sie Ihr Ziel nicht auch mit einer einfacheren Textfunktion erreichen würden. Die folgenden Regexp-ähnlichen Funktionen können Sie auch dann nutzen, wenn Sie die Syntax für reguläre Ausdrücke nicht kennen.
Funktion | Beschreibung |
---|---|
CONTAINS_TEXT |
Gibt „true“ zurück, wenn der angegebene Text im Feld oder im Ausdruck gefunden wird. Andernfalls wird „false“ zurückgegeben. |
ENDS_WITH |
Gibt „true“ zurück, wenn das Feld oder der Ausdruck mit dem angegebenen Text endet. Andernfalls wird „false“ zurückgegeben. |
LEFT_TEXT |
Gibt eine bestimmte Anzahl von Zeichen ab dem Beginn des angegebenen Strings zurück |
REPLACE | Gibt eine Kopie des ursprünglichen Texts zurück, in der alle Vorkommen des Suchtexts durch den neuen Text ersetzt wurden |
RIGHT_TEXT |
Gibt eine bestimmte Anzahl von Zeichen ab dem Ende des angegebenen Strings zurück |
STARTS_WITH |
Gibt „true“ zurück, wenn das Feld oder der Ausdruck mit dem angegebenen Text beginnt. Andernfalls wird „false“ zurückgegeben. |
TRIM |
Gibt Text ohne vorangehende und nachstehende Leerzeichen zurück |
Beispiele für reguläre Ausdrücke
Das Verzeichnis der obersten Ebene einer URL extrahieren:
REGEXP_EXTRACT(URL, '^https://[^/]+/([^/]+)/')
Wenn das Feld URL
beispielsweise die Adresse dieser Seite enthält, gibt die Funktion looker-studio
zurück.
Werbekampagnen nach Sprache kategorisieren:
Wenn Sie diesen Befehl z. B. auf die Dimension Kampagne im Google Analytics-Demokonto anwenden, werden folgende Ergebnisse zurückgegeben:
Kampagne | Sprache |
---|---|
Campaign #1 | Other language |
1000549 | Google Analytics Demo | DR | apontes | NA | US | en | Hybrid | AW SEM | BKWS | ~ AW - Google Brand (US) | English |
1000549 | Google Analytics Demo | DR | apontes | NA | CA | es | Hybrid | AW SEM | BKWS | ~ AW - YouTube (CA) | Spanish |
Reihenfolge der Abschnitte in einem String ändern:
Im Beispiel oben werden die einzelnen Abschnitte durch einen Doppelpunkt (:) getrennt.
Metazeichen
Metazeichen sind Zeichen, die in regulären Ausdrücken eine besondere Bedeutung haben. Im Folgenden sehen Sie einige Metazeichen, die häufig verwendet werden. Wenn Sie die Beispiele anklicken, werden Seiten in der Google Analytics-Hilfe geöffnet. Die entsprechenden Informationen gelten aber auch für Looker Studio.
In der google/RE2-Dokumentation auf GitHub (in englischer Sprache) finden Sie Informationen zur vollständigen Syntax regulärer Ausdrücke.
Platzhalter
. | Entspricht jedem einzelnen Zeichen (Buchstabe, Zahl oder Symbol) | 1. entspricht 10, 1A 1.1 entspricht 111, 1A1 Beispiele |
? | Entspricht keinmal oder einmal dem vorangehenden Zeichen | 10? entspricht 1, 10 Beispiele |
+ | Entspricht mindestens einmal dem vorangehenden Zeichen | 10+ entspricht 10, 100 Beispiele |
* | Entspricht keinmal oder mehrmals dem vorangehenden Zeichen | 1* entspricht 1, 10 Beispiele |
| | Ergibt eine ODER-Übereinstimmung Nicht am Ende eines Ausdrucks verwenden |
1|10 entspricht 1, 10 Beispiele |
Anker
^ | Entspricht aufeinanderfolgenden Zeichen am Anfang eines Strings | ^10 entspricht 10, 100, 10x ^10 entspricht nicht 110, 110x Beispiele |
$ | Entspricht aufeinanderfolgenden Zeichen am Ende eines Strings | 10$ entspricht 110, 1010 10$ entspricht nicht 100, 10x Beispiele |
Gruppen
( ) | Entspricht den in Klammern gesetzten Zeichen in der angegebenen Reihenfolge an einer beliebigen Stelle eines Strings Wird auch verwendet, um andere Ausdrücke zu gruppieren |
(10) entspricht 10, 101, 1011 ([0-9]|[a-z]) entspricht einer beliebigen Zahl oder einem beliebigen Kleinbuchstaben Beispiele |
[ ] | Entspricht den in Klammern gesetzten Zeichen in beliebiger Reihenfolge an einer beliebigen Stelle eines Strings | [10] entspricht 012, 120, 210 Beispiele |
- | Erstellt einen Zeichenbereich in Klammern zur Übereinstimmung an einer beliebigen Stelle im String | [0-9] entspricht einer beliebigen Zahl zwischen 0 und 9 Beispiele |
Escapezeichen
\ |
Zeigt an, dass das angrenzende Zeichen wortgetreu und nicht als Metazeichen regulärer Ausdrücke ausgewertet werden soll Weitere Informationen finden Sie unten. |
\. zeigt an, dass der angrenzende Punkt als Punkt oder Dezimalzeichen und nicht als Platzhalter interpretiert werden soll 216\.239\.32\.34 entspricht 216.239.32.34 Beispiele |
Zeichenklassen
\d |
Ziffern (≡ [0-9]) |
\D |
keine Ziffern (≡ [^0-9]) |
\s |
Leerzeichen (≡ [\t\n\f\r ]) |
\S |
keine Leerzeichen (≡ [^\t\n\f\r ]) |
\w |
Wortzeichen (≡ [0-9A-Za-z_]) |
\W |
keine Wortzeichen (≡ [^0-9A-Za-z_]) |
Tipps
Einfache Ausdrücke verwenden
Verwenden Sie einfache reguläre Ausdrücke. Sie lassen sich von anderen Nutzern leichter auswerten und anpassen.
Groß-/Kleinschreibung
(?i)
verwenden. Beispiel:REGEXP_EXTRACT(MyField, '(?i)(a.*)')
gibt sowohl „abc123“ als auch „ABC123“ zurück.
Umgekehrten Schrägstrich maskieren
Wie oben erwähnt, können Sie den umgekehrten Schrägstrich (\) verwenden, um Metazeichen regulärer Ausdrücke zu maskieren, die wortgetreu ausgewertet werden sollen. Der umgekehrte Schrägstrich muss ebenfalls maskiert werden, damit er in einem in Anführungszeichen gesetzten String gefunden werden kann. Der reguläre Ausdruck enthält dann also zwei umgekehrte Schrägstriche. Beispiel:
REGEXP_REPLACE(String, "(\\[.*\\])\\+(\\[.*\\])","\\2 \\1")
Alternativ können Sie das Präfix für Raw-String-Literale (R) verwenden:
REGEXP_REPLACE(String, R"(\[.*\])\+(\[.*\])",R"\2 \1")