Notifica

Questo articolo riguarda Looker Studio. Per la documentazione di Looker, visita https://cloud.google.com/looker/docs/intro.

Espressioni regolari in Looker Studio

Un'espressione regolare ("regexp") è una sequenza specifica di caratteri che corrispondono in modo più o meno ampio a modelli presenti nei tuoi dati. Puoi utilizzarla per creare filtri più flessibili nei grafici e nei controlli. Puoi anche utilizzare le seguenti funzioni di espressione regolare nelle formule dei campi calcolati:

REGEXP_CONTAINS Restituisce true se il valore di input contiene il modello di espressione regolare. In caso contrario, restituisce false.
Scopri di più.
REGEXP_EXTRACT Restituisce la prima sottostringa corrispondente nel valore di input che corrisponde al modello di espressione regolare.
Scopri di più.
REGEXP_MATCH Restituisce true se il valore di input corrisponde al modello di espressione regolare. In caso contrario, restituisce false.
Scopri di più.
REGEXP_REPLACE Sostituisce tutte le occorrenze di testo corrispondenti al modello di espressione regolare nel valore di input con la stringa di sostituzione.
Scopri di più.

Alternative all'utilizzo delle espressioni regolari

La creazione di espressioni regolari può essere complessa. Prima di utilizzare una funzione regexp, valuta se utilizzare una funzione di testo più semplice per raggiungere il tuo obiettivo. Le seguenti funzioni forniscono una funzionalità simile a quella delle espressioni regolari senza che tu debba conoscere la sintassi delle espressioni regolari.

Funzione Descrizione
CONTAINS_TEXT

Restituisce true se il testo specificato viene individuato nel campo o nell'espressione. In caso contrario, restituisce false.

ENDS_WITH

Restituisce true se il campo o l'espressione termina con il testo specificato. In caso contrario, restituisce false.

LEFT_TEXT

Restituisce un numero di caratteri a partire dall'inizio di una stringa specificata.

REPLACE Restituisce una copia del testo originale in cui tutte le occorrenze del testo di ricerca sono state sostituite con il testo sostitutivo.
RIGHT_TEXT

Restituisce un numero di caratteri a partire dalla fine di una stringa specificata.

STARTS_WITH

Restituisce true se il campo o l'espressione inizia con il testo specificato. In caso contrario, restituisce false.

TRIM

Restituisce il testo con gli spazi iniziali e finali rimossi.

Esempi di espressioni regolari

Corrisponde se MyField contiene spazi:
REGEXP_CONTAINS(MyField, "\\s+")

 

Estrae la directory di primo livello in un URL:

REGEXP_EXTRACT(URL, '^https://[^/]+/([^/]+)/')

Ad esempio, se il campo URL contiene l'indirizzo di questa pagina, la funzione riportata sopra restituisce looker-studio.

 

Classifica le campagne pubblicitarie in base alla lingua:

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

Ad esempio, l'applicazione di questa funzione alla dimensione Campagna nell'account dimostrativo Google Analytics produce i seguenti risultati:

Campagna Lingua
Campagna n. 1 Altra lingua
1000549 | Google Analytics Demo | DR | apontes | NA | US | en | Hybrid | AW SEM | BKWS | ~ AW - Google Brand (US) Inglese
1000549 | Google Analytics Demo | DR | apontes | NA | CA | es | Hybrid | AW SEM | BKWS | ~ AW - YouTube (CA) Spagnolo

 

Inverte l'ordine delle sezioni in una stringa:

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

Nell'esempio precedente, le sezioni sono separate dai due punti (:).

Metacaratteri

I metacaratteri sono caratteri che hanno un significato speciale in un'espressione regolare. Di seguito sono elencati alcuni dei metacaratteri più comuni che puoi utilizzare. Tieni presente che gli esempi si aprono nel Centro assistenza Google Analytics, ma le informazioni presentate si applicano anche a Looker Studio.

Per la sintassi completa delle espressioni regolari, consulta la documentazione google/RE2 di GitHub.

Caratteri jolly

. Corrisponde a qualsiasi carattere singolo (lettera, numero o simbolo) 1. corrisponde a
10, 1A

1.1 corrisponde a
111, 1A1

Esempi
? Corrisponde al carattere che lo precede 0 volte o 1 volta 10? corrisponde a
1, 10

Esempi
+ Corrisponde al carattere che lo precede 1 o più volte 10+ corrisponde a
10, 100

Esempi
* Corrisponde al carattere che lo precede 0 o più volte 1* corrisponde a
1, 10

Esempi
| Crea una corrispondenza OR

Da non utilizzare alla fine di un'espressione
1|10 corrisponde a
1, 10

Esempi

Ancoraggi

^ Corrisponde ai caratteri adiacenti all'inizio di una stringa ^10 corrisponde a
10, 100, 10x

^10 non corrisponde a
110, 110x

Esempi
$ Corrisponde ai caratteri adiacenti alla fine di una stringa 10$ corrisponde a
110, 1010

10$ non corrisponde a
100, 10x

Esempi

Gruppi

( ) Corrisponde ai caratteri racchiusi nell'esatto ordine in qualsiasi punto di una stringa


Usato anche per raggruppare altre espressioni
(10) corrisponde a
10, 101, 1011

([0-9]|[a-z]) corrisponde a
qualsiasi numero o lettera minuscola

Esempi
[ ] Corrisponde ai caratteri racchiusi in qualsiasi ordine in qualsiasi punto di una stringa [10] corrisponde a
012, 120, 210

Esempi
- Crea un intervallo di caratteri tra parentesi corrispondente in qualsiasi punto di una stringa [0-9] corrisponde a tutti i numeri da 0 a 9

Esempi

Carattere di escape

\

Indica che il carattere adiacente deve essere interpretato letteralmente anziché come un metacarattere regex

Vedi la nota riportata di seguito sui metacaratteri corrispondenti

\. indica che il punto adiacente deve essere interpretato come un punto o una virgola anziché come carattere jolly

216\.239\.32\.34 corrisponde a
216.239.32.34

Esempi

Classi di caratteri

\d

cifre (≡ [0-9])

\D

non cifre (≡ [^0-9])

\s

spazio vuoto (≡ [\t\n\f\r ])

\S

non spazio vuoto (≡ [^\t\n\f\r ])

\w

caratteri alfanumerici (≡ [0-9A-Za-z_])

\W

non caratteri alfanumerici (≡ [^0-9A-Za-z_])

Suggerimenti

Utilizza espressioni semplici

Mantieni semplici le espressioni regolari. Le espressioni semplici sono più facili da interpretare e modificare per un altro utente.

Sensibilità alle maiuscole

Per impostazione predefinita, le espressioni regolari sono sensibili alle maiuscole. Puoi utilizzare il flag (?i) per fare in modo che la corrispondenza non faccia distinzione tra maiuscole e minuscole. Ad esempio:
  • REGEXP_EXTRACT(MyField, '(?i)(a.*)') estrae sia "abc123" sia "ABC123".

Esegui l'escape della barra rovesciata

Come indicato sopra, devi utilizzare la barra rovesciata (\) per eseguire l'escape dei metacaratteri dell'espressione regolare quando vuoi che questi vengano interpretati letteralmente. Per creare una corrispondenza con una barra rovesciata in una stringa tra virgolette, devi eseguire l'escape anche di quella, il che significa che l'espressione includerà due barre rovesciate. Ad esempio:

REGEXP_REPLACE(String, "(\\[.*\\])\\+(\\[.*\\])","\\2 \\1")

In alternativa, puoi utilizzare il prefisso del valore letterale stringa non elaborata R:

REGEXP_REPLACE(String, R"(\[.*\])\+(\[.*\])",R"\2 \1")

 

 

È stato utile?

Come possiamo migliorare l'articolo?
Ricerca
Cancella ricerca
Chiudi ricerca
App Google
Menu principale
11433070517568710113
true
Cerca nel Centro assistenza
true
true
true
true
true
102097
false
false