String

REGEXP_MATCHES

PostgreSQLPostgreSQL

Mencari semua matches pattern regex dan mengembalikan set of arrays. Gunakan flag g untuk global matching. Beda dengan REGEXP_MATCH yang hanya return first match.

Tipe hasil: setof text[]Diperbarui: 16 Mei 2026

Syntax

SQL
REGEXP_MATCHES(string, pattern [, flags])

Parameter

stringtextwajib

String tempat mencari

patterntextwajib

Regular expression pattern

flagstextopsional

Flags: g=global (return all matches)

Contoh Penggunaan

Find All Numbers

SQL
1SELECT REGEXP_MATCHES(a1b2c3d4, ([0-9]), g);

Mencari semua angka dalam string.

Hasil
regexp_matches
{1}
{2}
{3}
{4}

Extract All Emails

SQL
1SELECT m[1] AS email
2FROM REGEXP_MATCHES(
3 Contact john@a.com or jane@b.com,
4 ([a-z]+@[a-z]+\.[a-z]+),
5 g
6) AS m;

Mengekstrak semua email dari text.

Hasil
email
john@a.com
jane@b.com

Parse Key-Value Pairs

SQL
1SELECT m[1] AS key, m[2] AS value
2FROM REGEXP_MATCHES(
3 name=John;age=30;city=Jakarta,
4 ([a-z]+)=([^;]+),
5 g
6) AS m;

Parsing string format key=value.

Hasil
keyvalue
nameJohn
age30
cityJakarta

Pertanyaan Umum tentang REGEXP_MATCHES

Apa itu fungsi REGEXP_MATCHES di PostgreSQL?
Mencari semua matches pattern regex dan mengembalikan set of arrays. Gunakan flag g untuk global matching. Beda dengan REGEXP_MATCH yang hanya return first match. Di PostgreSQL, fungsi REGEXP_MATCHES termasuk dalam kelompok fungsi yang sering digunakan untuk mengolah dan menganalisis data secara efisien.
Bagaimana cara menggunakan REGEXP_MATCHES di PostgreSQL?
Gunakan sintaks berikut: REGEXP_MATCHES(string, pattern [, flags]). Pastikan argumen yang dimasukkan sudah sesuai dengan tipe data yang diharapkan.
Apa nilai yang dikembalikan oleh fungsi REGEXP_MATCHES?
Fungsi REGEXP_MATCHES mengembalikan nilai bertipe setof text[]. Pastikan tipe data hasil sudah sesuai dengan kebutuhan query atau formula kamu. Jika input mengandung nilai NULL, perilaku fungsi dapat berbeda — selalu periksa dokumentasi untuk memastikan hasilnya sesuai ekspektasi.
Apa saja parameter fungsi REGEXP_MATCHES?
Fungsi ini memiliki 2 parameter wajib dan 1 parameter opsional. Parameter yang digunakan: string (text, wajib): String tempat mencari; pattern (text, wajib): Regular expression pattern; flags (text, opsional): Flags: g=global (return all matches).