regexp_like-functie

Van toepassing op:vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime 10.4 LTS en hoger

Retourneert waar als str deze overeenkomt regex. Deze functie is een synoniem voor rlike operator.

Syntaxis

regexp_like( str, regex )

Argumenten

  • str: Een STRING expressie die moet worden vergeleken.
  • regex: Een STRING expressie met een overeenkomend patroon.

Retouren

A BOOLEAN.

De regex tekenreeks moet een reguliere expressie zijn. Zie Reguliere expressies voor de ondersteunde syntaxis.

Wanneer u letterlijke gegevens gebruikt, gebruikt raw-literal u (r voorvoegsel) om voorverwerking van escape-tekens te voorkomen.

Algemene foutvoorwaarden

Voorbeelden

Testen of een tekenreeks overeenkomt met een patroon

> SELECT regexp_like('Databricks SQL', r'^Data');
 true

> SELECT regexp_like('Spark SQL', r'^Data');
 false

Een eenvoudige e-mailindeling valideren

> SELECT regexp_like('alice@example.com', r'^\w+@\w+\.\w+$');
 true

> SELECT regexp_like('not-an-email', r'^\w+@\w+\.\w+$');
 false

Niet hoofdlettergevoelig vergelijken

Gebruik de (?i) inlinevlag om hoofdletters en kleine letters te negeren.

> SELECT regexp_like('ERROR: disk full', r'(?i)error');
 true

Een letterlijke backslash vergelijken

Een backslash is een regex metacharacter, dus match een letterlijke backslash met \\. Met een onbewerkt letterlijk (r voorvoegsel) voorkomt u dat u ook het ESCAPE-teken van SQL moet verdubbelen.

> SELECT regexp_like(r'%SystemDrive%\Users\John', r'%SystemDrive%\\Users.*');
 true

> SELECT regexp_like('%SystemDrive%\\Users\\John', '%SystemDrive%\\\\Users.*');
 true

Ongeldig regex-patroon

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