Reguläre Ausdrücke in Looker Studio

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 „true“ zurück, wenn der Eingabewert das Muster des regulären Ausdrucks enthält. Andernfalls wird „false“ zurückgegeben.

Weitere Informationen zu REGEXP_CONTAINS
REGEXP_EXTRACT Gibt den ersten Teilstring im Eingabewert zurück, der mit dem Muster des regulären Ausdrucks übereinstimmt.

Weitere Informationen zu REGEXP_EXTRACT
REGEXP_MATCH Gibt „true“ zurück, wenn der Eingabewert mit dem Muster des regulären Ausdrucks übereinstimmt. Andernfalls wird „false“ zurückgegeben.

Weitere Informationen zu REGEXP_MATCH
EGEXP_REPLACE Ersetzt alle Textstrings im Eingabewert, die mit dem Muster des regulären Ausdrucks übereinstimmen, durch den Ersatzstring.

Weitere Informationen zu EGEXP_REPLACE

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

Stimmt überein, wenn „MeinFeld“ Leerzeichen enthält:

REGEXP_CONTAINS(MyField, "\\s+")

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 vorherige Funktion looker-studio zurück.

Werbekampagnen nach Sprache kategorisieren:

CASE
    WHEN REGEXP_MATCH(Campaign 2, R".*\|\s*en\s*\|.*") then "English"
    WHEN REGEXP_MATCH(Campaign 2, R".*\|\s*es\s*\|.*") then "Spanish"
    ELSE "Other language"
END

Wenn Sie diesen regulären Ausdruck z. B. auf die Dimension Kampagne im Google Analytics-Demokonto anwenden, werden folgende Ergebnisse zurückgegeben:

Kampagne Sprache
Campaign #1 Andere Sprache
1000549 | Google Analytics Demo | DR | apontes | NA | US | en | Hybrid | AW SEM | BKWS | ~ AW - Google Brand (US) Englisch
1000549 | Google Analytics Demo | DR | apontes | NA | CA | es | Hybrid | AW SEM | BKWS | ~ AW - YouTube (CA) Spanisch

Reihenfolge der Abschnitte in einem String ändern:

REGEXP_REPLACE(Campaign, R'(.*):(.*)', R'\2 \1')

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.

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
| Erstellt 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 , 10  0, 10  x 

^10 entspricht nicht 1  10 , 1  10  x 

Beispiele
Entspricht aufeinanderfolgenden Zeichen am Ende eines Strings. 10 € entspricht 1  10 , 10  10 

10 € entspricht nicht  10  0,  10  x 

Beispiele

Gruppen

( ) Entspricht den in Klammern gesetzten Zeichen in der angegebenen Reihenfolge an einer beliebigen Stelle eines Strings.

Wird auch zum Gruppieren anderer Ausdrücke verwendet.
(10) entspricht 10 , 10 1, 10 11

([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 01 2, 1 20, 2 10

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

Escape-Taste

\\

Zeigt an, dass das angrenzende Zeichen wortgetreu und nicht als Metazeichen regulärer Ausdrücke ausgewertet werden soll.

\\ 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

Verwenden Sie einfache Ausdrücke.

Verwenden Sie einfache reguläre Ausdrücke. Sie lassen sich von anderen Nutzern leichter auswerten und anpassen.

Groß-/Kleinschreibung beachten

Bei regulären Ausdrücken wird standardmäßig die Groß-/Kleinschreibung berücksichtigt. Wenn sie ignoriert werden soll, können Sie das Flag (?i) verwenden. Mit diesem Ausdruck werden beispielsweise sowohl „abc123“ als auch „ABC123“ extrahiert:

REGEXP_EXTRACT(MyField, '(?i)(a.*)')

Umgekehrten Schrägstrich maskieren

Wie bereits 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")