SQL Academy
Premium
Funktionsreferenz

REGEXP_LIKE

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

PostgreSQL 17.5
REGEXP_LIKE(string, pattern[, flags])

Parameter

stringtext
String, in dem gesucht wird
patterntext
Regulärer Ausdruck
flagstextoptional
Flags, zum Beispiel i, um Groß- und Kleinschreibung zu ignorieren

Rückgabewert

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

Beispiele

Mit und ohne Groß- und Kleinschreibung

PostgreSQL 17.5
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.5
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