SQL Academy
Premium
Funktionsreferenz

REGEXP_COUNT

Zählt, wie oft ein regulärer Ausdruck in einem String einen Treffer findet.

PostgreSQL 17.5
REGEXP_COUNT(string, pattern[, start[, flags]])

Parameter

stringtext
String, in dem gesucht wird
patterntext
Regulärer Ausdruck
startintegeroptional
Position, ab der gesucht wird, standardmäßig 1
flagstextoptional
Flags, zum Beispiel i, um Groß- und Kleinschreibung zu ignorieren

Rückgabewert

Ganze Zahl; 0, wenn es keine Treffer gibt

Beispiele

Zahlen und Ziffern in einem String

PostgreSQL 17.5
SELECT REGEXP_COUNT('a1b22c333', '[0-9]+') AS numbers,
	REGEXP_COUNT('a1b22c333', '[0-9]') AS digits;
numbersdigits
36

Vokale in Namen

PostgreSQL 17.5
SELECT member_name,
	REGEXP_COUNT(member_name, '[aeiou]', 1, 'i') AS vowels
FROM FamilyMembers;
member_namevowels
Headley Quincey6
Flavia Quincey6
Andie Quincey6
Lela Quincey5
Annie Quincey6
Ernest Forrest4
Constance Forrest5
Wednesday Addams5

Details

Die Funktion gibt es seit PostgreSQL 15. Treffer überlappen sich nicht: Im String 'aaa' wird das Muster 'aa' einmal gefunden.

Siehe auch