Função regexp_instr

Aplica-se a:verificação marcada como sim SQL do Databricks caixa de seleção marcada Databricks Runtime 11.3 LTS e superior

Retorna à posição da primeira substring em str combinação regexp.

Sintaxe

regexp_instr( str, regexp )

Argumentos

  • str: uma expressão STRING a ser correspondida.
  • regexp: uma expressão STRING com um padrão.

Retornos

Um INTEGER.

A regexp cadeia de caracteres deve ser uma expressão regular. Consulte expressões regulares para a sintaxe com suporte.

Ao usar literais, use raw-literal (prefixo r) para evitar o pré-processamento do caractere de escape.

Se qualquer um dos argumentos for NULL, o resultado será NULL. Se o padrão não for encontrado, o resultado será 0.

Condições de erro comuns

Exemplos

Localizar a posição da primeira correspondência

O padrão Ste(v|ph)en corresponde Steven ao início da cadeia de caracteres, portanto, a posição é 1.

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

Localizar a posição do primeiro dígito

As posições são baseadas em 1.

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

Localizar a posição de um caractere

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

Nenhuma correspondência retorna 0

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

NULL retorno de entrada NULL

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

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

Padrão regex inválido

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