Funzione regexp_count

Si applica a:segno di spunta sì Databricks SQL segno di spunta sì Databricks Runtime 11.3 LTS e versioni successive

Restituisce il numero di volte in cui str corrisponde al modello regexp.

Sintassi

regexp_count( str, regexp )

Argomenti

  • str STRING: espressione di cui trovare la corrispondenza.
  • regexp STRING: espressione con un criterio.

Valori restituiti

Oggetto INTEGER.

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.

Se uno degli argomenti è NULL, il risultato è NULL.

Condizioni di errore comuni

Esempi

Conteggio delle occorrenze di un criterio

Il criterio Ste(v|ph)en corrisponde sia a Steven che Stephena .

> SELECT regexp_count('Steven Jones and Stephen Smith are the best players', 'Ste(v|ph)en');
 2

Contare i numeri in una stringa

> SELECT regexp_count('There are 10 cats, 20 dogs, and 30 birds', r'\d+');
 3

Contare le parole in una stringa

> SELECT regexp_count('one two three four', r'\w+');
 4

Conteggio senza distinzione tra maiuscole e minuscole

Usare il flag inline per ignorare la (?i) distinzione tra maiuscole e minuscole.

> SELECT regexp_count('Yes yes YES', r'(?i)yes');
 3

Nessuna corrispondenza restituisce 0

> SELECT regexp_count('Mary had a little lamb', 'Ste(v|ph)en');
 0

NULL restituisce input NULL

> SELECT regexp_count(NULL, 'Ste(v|ph)en');
 NULL

> SELECT regexp_count('Mary had a little lamb', NULL);
 NULL

Modello regex non valido

> SELECT regexp_count('abc', '[invalid');
  Error: INVALID_PARAMETER_VALUE.PATTERN