String
PostgreSQL
REGEXP_MATCH
Mencari pattern regex dalam string dan mengembalikan array of captured groups. Hanya mengembalikan match pertama. Untuk semua matches, gunakan REGEXP_MATCHES.
Tipe hasil:
text[]Syntax
SQL
REGEXP_MATCH(string, pattern [, flags])Parameter
stringtextwajib
String tempat mencari
patterntextwajib
Regular expression pattern
flagstextopsional
Flags: i=case-insensitive
Contoh Penggunaan
Extract Email Parts
SQL
1 SELECT REGEXP_MATCH( 2 Contact: john@example.com, 3 ([a-z]+)@([a-z]+)\.([a-z]+) 4 );
Mengekstrak bagian email dengan capture groups.
Hasil
| regexp_match |
|---|
| {john,example,com} |
Extract First Number
SQL
1 SELECT (REGEXP_MATCH(Price: $123.45, ([0-9]+\.?[0-9]*)))[1] AS price;
Mengekstrak angka pertama dari string.
Hasil
| price |
|---|
| 123.45 |
Case Insensitive
SQL
1 SELECT REGEXP_MATCH(Hello WORLD, (world), i);
Flag i untuk case-insensitive matching.
Hasil
| regexp_match |
|---|
| {WORLD} |