regexp Operador

Aplica-se a:Marque Sim Databricks SQL Marque Sim Databricks Runtime 10.4 LTS e superior

Retorna true se str corresponder .regex Esta função é sinónimo de rlike operador.

Sintaxe

str [NOT] regexp regex

Argumentos

  • str: Uma expressão STRING na ordenação UTF8_BINARY que deve ser correspondida.
  • regex: Uma STRING expressão com um padrão correspondente.

Devoluções

Um BOOLEAN.

A regex cadeia deve ser uma expressão regular. Ver Expressões regulares para a sintaxe suportada. Ao usar literais, use raw-literal (r prefixo) para evitar o pré-processamento de caracteres de escape.

str NOT regexp ... é equivalente a NOT(str regexp ...).

Condições de erro comuns

Exemplos

Teste se uma corda corresponde a um padrão

> SELECT 'Databricks SQL' regexp r'^Data';
 true

> SELECT 'Spark SQL' regexp r'^Data';
 false

Verifique se uma cadeia contém um dígito

> SELECT 'order12345' regexp r'\d';
 true

Combinar de forma insensível ao caso

Usa a (?i) bandeira inline para ignorar o caso.

> SELECT 'HELLO WORLD' regexp r'(?i)hello';
 true

Anular uma correspondência com NOT

> SELECT 'no digits here' NOT regexp r'\d';
 true

Iguale uma barra inversa literal

Uma barra inversa é um metacarácter regex, por isso corresponde uma barra inversa literal com \\. Um literal bruto (r prefixo) evita também ter de duplicar o carácter de escape SQL.

> SELECT r'%SystemDrive%\Users\John' regexp r'%SystemDrive%\\Users.*';
 true

> SELECT r'%SystemDrive%\Users\John' regexp '%SystemDrive%\\\\Users.*';
 true