A função REGEXP_EXTRACT busca correspondências em source conforme o pattern e retorna a string do grupo especificado por group_id.
Considerações
A função REGEXP_EXTRACT segue as especificações de regex do Java na edição de tipos de dados compatível com Hive. Nas edições 1.0 e MaxCompute V2.0 data type edition, ela obedece às especificações do MaxCompute.
Formato do comando
STRING REGEXP_EXTRACT(STRING <source>, STRING <pattern>[, BIGINT <group_id>])
Descrição dos parâmetros
source: obrigatório. Tipo STRING. String alvo da correspondência.
pattern: obrigatório. Constante STRING ou expressão regular. Substring ou expressão regular usada na correspondência. Para mais detalhes sobre as regras de escrita de expressões regulares, consulte Especificações de expressões regulares.
-
group_id: opcional. Tipo BIGINT. Valor maior ou igual a 0.
Sem a especificação de group_id, o valor padrão é 1 e a função retorna o primeiro grupo correspondente.
Com group_id especificado, a função retorna o conteúdo da string do grupo indicado por group_id.
Se group_id for igual a 0, a função retorna a substring que satisfaz todo o pattern.
Os dados são armazenados no formato UTF-8. Caracteres chineses podem ser representados por seus códigos hexadecimais correspondentes, cujo intervalo é [\\x{4e00},\\x{9fa5}].
Valores de retorno
Retorna um valor do tipo STRING. Regras de retorno:
-
Erro retornado se pattern for uma string vazia, ou se não houver grupos em pattern e group_id não for especificado.
NotaExecute
SET odps.sql.bigquery.compatible=true;para ativar o modo de compatibilidade com BigQuery. Nesse modo, caso não existam grupos em pattern e group_id não seja especificado, a função retorna a substring que corresponde a todo o pattern. Erro retornado quando group_id não é do tipo BIGINT ou é menor que 0.
NULL retornado se source, pattern ou group_id tiverem valor NULL.
Funções relacionadas
REGEXP_EXTRACT faz parte das funções de string. Para conhecer outras funções de busca e conversão de formato de strings, consulte Funções de string.