String

REGEXP_INSTR

MySQLMySQL

Mencari posisi substring yang cocok dengan pattern regex. Tersedia di MySQL 8.0+.

Tipe hasil: INTEGERDiperbarui: 7 Jan 2026

Syntax

SQL
REGEXP_INSTR(expr, pat [, pos [, occurrence [, return_option [, match_type]]]])

Parameter

exprstringwajib

String sumber

patstringwajib

Pattern regular expression

posintegeropsional

Posisi awal pencarian

Default: 1

occurrenceintegeropsional

Kemunculan ke-n

Default: 1

return_optionintegeropsional

0=posisi awal, 1=posisi setelah match

Default: 0

match_typestringopsional

Mode matching

Contoh Penggunaan

Cari Posisi Pattern

SQL
1SELECT REGEXP_INSTR('Hello World 123', '[0-9]+') AS num_pos;

Mencari posisi angka pertama.

Hasil
num_pos: 13

Validasi Email Format

SQL
1SELECT
2 CASE WHEN REGEXP_INSTR(email, '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+$') > 0
3 THEN 'Valid' ELSE 'Invalid' END AS validation
4FROM users;

Validasi format email.

Hasil
validation: Valid

Cari Kemunculan Kedua

SQL
1SELECT REGEXP_INSTR('foo bar foo', 'foo', 1, 2) AS second_foo;

Mencari posisi 'foo' kedua.

Hasil
second_foo: 9