regexp opérateur

S’applique à :coche marquée oui Databricks SQL coche marquée oui Databricks Runtime 10.4 LTS et versions ultérieures

Retourne la valeur true si str correspond à regex. Cette fonction est un synonyme pour l'opérateur rlike.

Syntaxe

str [NOT] regexp regex

Arguments

  • str STRING expression dans le classement UTF8_BINARY à faire correspondre.
  • regex : expression STRING avec un modèle correspondant.

Retours

BOOLEAN.

La regex chaîne doit être une expression régulière. Consultez les expressions régulières pour la syntaxe prise en charge. Lors de l’utilisation de littéraux, utilisez raw-literal (préfixe r) pour éviter le traitement préalable du caractère d’échappement.

str NOT regexp ... équivaut à NOT(str regexp ...).

Conditions d’erreur courantes

Exemples

Tester si une chaîne correspond à un modèle

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

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

Vérifier si une chaîne contient un chiffre

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

Mettre en correspondance la casse sans respect de la casse

Utilisez l’indicateur inline pour ignorer la (?i) casse.

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

Négation d’une correspondance avec NOT

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

Mettre en correspondance une barre oblique inverse littérale

Une barre oblique inverse est un métacharacteur regex, donc faire correspondre une barre oblique inverse littérale avec \\. Un littéral brut (r préfixe) évite de devoir également doubler le caractère d’échappement SQL.

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

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