Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Funzione
Si applica a:
Databricks SQL
Databricks Runtime
Estrae tutte le stringhe in str che corrispondono all'espressione regexp e corrispondono all'indice del regex gruppo.
Sintassi
regexp_extract_all(str, regexp [, idx] )
Argomenti
-
strSTRING: espressione di cui trovare la corrispondenza. -
regexpSTRING: espressione con un criterio di ricerca corrispondente. -
idx: espressione numerica integrale facoltativa maggiore o uguale a 0 con il valore predefinito 1.
Valori restituiti
Oggetto ARRAY<STRING>.
La regexp stringa deve essere un'espressione regolare. Per la sintassi supportata, vedere Espressioni regolari .
Quando si usano valori letterali, usare raw-literal (r prefisso) per evitare la pre-elaborazione dei caratteri di escape.
regexp può contenere più gruppi.
idx indica il gruppo regex da estrarre.
Un idx valore pari a 0 indica che corrisponde all'intera espressione regolare.
Condizioni di errore comuni
Esempi
Estrarre un gruppo di acquisizione da ogni corrispondenza
idx seleziona il gruppo di acquisizione da restituire da ogni corrispondenza.
> SELECT regexp_extract_all('100-200, 300-400', r'(\d+)-(\d+)', 1);
[100, 300]
> SELECT regexp_extract_all('100-200, 300-400', r'(\d+)-(\d+)', 2);
[200, 400]
Estrarre ogni numero in una stringa
> SELECT regexp_extract_all('There are 10 cats, 20 dogs, and 30 birds', r'(\d+)', 1);
[10, 20, 30]
Estrarre ogni hashtag
> SELECT regexp_extract_all('Posts tagged #data #ai #sql', r'#(\w+)', 1);
[data, ai, sql]
Estrarre ogni corrispondenza di un modello senza gruppo
Quando il criterio non ha un gruppo di acquisizione, usare un valore idx pari a 0 per restituire l'intera corrispondenza.
> SELECT regexp_extract_all('Send to alice@example.com or bob@example.org', r'\w+@\w+\.\w+', 0);
[alice@example.com, bob@example.org]
Modello regex non valido
> SELECT regexp_extract_all('abc', '[invalid', 0);
Error: INVALID_PARAMETER_VALUE.PATTERN