- Kategorien:
REGEXP_LIKE¶
Gibt „true“ zurück, wenn das Subjekt mit dem angegebenen Muster übereinstimmt. Beide Eingaben müssen Textausdrücke sein.
REGEXP_LIKE ähnelt der Funktion LIKE, bietet jedoch erweiterte reguläre POSIX-Ausdrücke anstelle von SQL LIKE-Mustersyntax. Unterstützt komplexere Abgleichsbedingungen als LIKE.
- Aliasse
RLIKE (1. Syntax)
Siehe auch: Zeichenfolgenfunktionen (reguläre Ausdrücke)
Syntax¶
REGEXP_LIKE( <subject> , <pattern> [ , <parameters> ] )
Argumente¶
Benötigt:
subject
Abzugleichendes Subjekt.
pattern
Abzugleichendes Muster.
Optional:
parameters
Zeichenfolge aus einem oder mehreren Zeichen, in der die Parameter angegeben sind, die zur Suche nach Übereinstimmungen verwendet werden. Unterstützte Werte:
c
,i
,m
,e
,s
Weitere Details dazu finden Sie unter Angeben der Parameter für reguläre Ausdrücke.
Standard:
c
Rückgabewerte¶
Der Datentyp des zurückgegebenen Werts ist BOOLEAN.
Nutzungshinweise¶
Die Funktion verankert implizit ein Muster an beiden Enden (d. h.
''
wird automatisch zu'^$'
und'ABC'
automatisch zu'^ABC$'
). Um beispielsweise eine beliebige Zeichenfolge, die mit ABC beginnt, abzugleichen, wäre das Muster'ABC.*'
erforderlich.Das Backslash-Zeichen (
\
) ist das Escapezeichen. Weitere Informationen dazu finden Sie unter Angeben von regulären Ausdrücken in Zeichenfolgenkonstante in einfachen Anführungszeichen.Weitere Nutzungshinweise zur Verwendung der Funktionen für reguläre Ausdrücke finden Sie unter Allgemeine Nutzungshinweise.
Sortierungsdetails¶
Arguments with collation specifications are currently not supported.
Beispiele¶
Erstellen Sie eine Tabelle mit den Namen der Städte:
CREATE OR REPLACE TABLE cities(city varchar(20)); INSERT INTO cities VALUES ('Sacramento'), ('San Francisco'), ('San Jose'), (null);
Führen Sie eine Abfrage unter Berücksichtigung der Groß-/Kleinschreibung mit einem Platzhalter aus:
SELECT * FROM cities WHERE REGEXP_LIKE(city, 'san.*'); +------+ | CITY | |------| +------+
Führen Sie eine Abfrage ohne Berücksichtigung der Groß-/Kleinschreibung mit einem Platzhalter aus:
SELECT * FROM cities WHERE REGEXP_LIKE(city, 'san.*', 'i'); +---------------+ | CITY | |---------------| | San Francisco | | San Jose | +---------------+
Weitere Beispiele für reguläre Ausdrücke finden Sie unter REGEXP.
Um nach einem Platzhalterzeichen zu suchen, müssen Sie das Platzhalterzeichen in Escapezeichen einschließen. Weitere Informationen zu Platzhalterzeichen finden Sie unter Angeben von regulären Ausdrücken in Zeichenfolgenkonstante in einfachen Anführungszeichen.