SQL Academy
Premium
Funktionsreferenz

REGEXP_LIKE

Prüft, ob ein String einen Treffer für einen regulären Ausdruck enthält.

PostgreSQL 17.9
REGEXP_LIKE(string, pattern[, flags])
  • [ ]optionaler Teil
string
String, in dem gesucht wird
text
pattern
Regulärer Ausdruck
text
flags
Flags, zum Beispiel i, um Groß- und Kleinschreibung zu ignorieren
textOptional
bceimnpqstwx

Rückgabewert

true oder false; NULL, wenn string oder pattern NULL ist

Beispiele

Mit und ohne Groß- und Kleinschreibung

PostgreSQL 17.9
SELECT REGEXP_LIKE('PostgreSQL', 'sql') AS case_sensitive,
	REGEXP_LIKE('PostgreSQL', 'sql', 'i') AS ignore_case;
case_sensitiveignore_case
falsetrue

Benutzer mit Gmail oder Hotmail

PostgreSQL 17.9
SELECT name,
	email
FROM Users
WHERE REGEXP_LIKE(email, '@(gmail|hotmail)\.com$')
LIMIT 5;
nameemail
Bruce Willisbarjam@hotmail.com
Jennifer Lopezbarjam@hotmail.com
Harrison Fordkostas@hotmail.com
Michael Douglastimtroyr@hotmail.com
Catherine Zeta-Jonesflakeg@hotmail.com

Details

Die Funktion gibt es seit PostgreSQL 15. Sie macht dasselbe wie der Operator ~ (und ~* ohne Rücksicht auf die Schreibweise). Ein Treffer wird an beliebiger Stelle des Strings gesucht: Um den ganzen String zu prüfen, ergänzt du das Muster um ^ und $.

Siehe auch