Cara kerja pola
| Bagian | Arti |
|---|---|
^\d{4} | Tahun empat digit |
(?:0[1-9]|1[0-2]) | Bulan 01–12 |
(?:0[1-9]|[12]\d|3[01]) | Tanggal 01–31 |
- | Tanda hubung literal di antara bagian |
Contoh kode
JavaScript
const re = /^\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\d|3[01])$/;
re.test(value); // true or falsePython
import re
bool(re.fullmatch(r'\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\d|3[01])', value))PHP
preg_match('/^\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\d|3[01])$/', $value) === 1;
Catatan dan batasan
Regex hanya bisa memeriksa format, bukan kalender: 2026-02-30 tetap lolos. Setelah cocok, pastikan dengan library tanggal atau new Date(value) lalu bandingkan bagiannya. Ini adalah format ISO 8601 yang dipakai oleh <input type="date">.
Regex Tester
Ketik pola dan lihat hasil cocok langsung ter-highlight di teks ujimu.