String

REGEXP_EXTRACT

BigQueryBigQuery

Mengekstrak substring pertama yang cocok dengan regular expression. Jika pattern memiliki capturing group, mengembalikan grup tersebut.

Tipe hasil: STRINGDiperbarui: 7 Jan 2026

Syntax

SQL
REGEXP_EXTRACT(value, regexp [, position [, occurrence]])

Parameter

valueSTRINGwajib

String sumber

regexpSTRINGwajib

Regular expression dengan optional capturing group

positionINT64opsional

Posisi awal pencarian (1-based)

Default: 1

occurrenceINT64opsional

Occurrence ke-n yang akan diekstrak

Default: 1

Contoh Penggunaan

Extract Domain

SQL
1SELECT
2 email,
3 REGEXP_EXTRACT(email, r'@([a-zA-Z0-9.-]+)') as domain
4FROM `project.dataset.users`;

Ekstrak domain dari email menggunakan capturing group.

Hasil
emaildomain
john@gmail.comgmail.com
jane@company.co.idcompany.co.id

Extract Numbers

SQL
1SELECT
2 text,
3 REGEXP_EXTRACT(text, r'[0-9]+') as first_number
4FROM `project.dataset.logs`;

Ekstrak angka pertama dari text.

Hasil
textfirst_number
Order #12345 confirmed12345
Invoice 2024-0012024

Extract with Position

SQL
1SELECT
2 REGEXP_EXTRACT('abc123def456', r'[0-9]+', 1, 2) as second_number;

Ekstrak occurrence kedua dari pattern.

Hasil
456