Funkce regexp_instr

Platí pro:zaškrtnutí označeného ano Databricks SQL zaškrtnutí označeného ano Databricks Runtime 11.3 LTS a vyšší

Vrátí pozici prvního podřetětětce, str který odpovídá regexp.

Syntaxe

regexp_instr( str, regexp )

Argumenty

  • str: Výraz STRING , který se má shodovat.
  • regexp: Výraz STRING se vzorem.

Návraty

Nějaký INTEGER.

Řetězec regexp musí být regulární výraz. Podporované syntaxe najdete v regulárních výrazech .

Při použití literálů použijte raw-literal (r předpona) k zamezení předzpracování escape sekvencí.

Pokud je NULLněkterý z argumentů , výsledek je NULL. Pokud se vzor nenajde, výsledek je 0.

Běžné chybové podmínky

Příklady

Vyhledání pozice první shody

Vzor Ste(v|ph)en odpovídá Steven na začátku řetězce, takže pozice je 1.

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

Vyhledání pozice první číslice

Pozice jsou založené na 1.

> SELECT regexp_instr('Order 1234 shipped', r'\d');
 7

Vyhledání pozice znaku

> SELECT regexp_instr('alice@example.com', r'@');
 6

Žádná shoda vrátí hodnotu 0.

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

NULL input returns NULL

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

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

Neplatný vzor regulárního výrazu

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