Cara kerja pola
| Bagian | Arti |
|---|---|
^ | Awal string |
[A-Za-z0-9._%+-]+ | Bagian lokal: satu atau lebih huruf, angka, titik, garis bawah, tanda persen, plus, atau strip |
@ | Tanda @ secara harfiah |
[A-Za-z0-9.-]+ | Nama domain, termasuk subdomain |
\. | Titik secara harfiah sebelum domain tingkat atas |
[A-Za-z]{2,} | Domain tingkat atas: dua huruf atau lebih (com, io, museum) |
$ | Akhir string |
Contoh kode
JavaScript
const re = /^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$/;
re.test(value); // true or falsePython
import re
bool(re.fullmatch(r'[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}', value))PHP
preg_match('/^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$/', $value) === 1;
Catatan dan batasan
Ini adalah pola praktis yang dipakai sebagian besar formulir pendaftaran. Pola ini menerima beberapa alamat yang secara teknis janggal (dua titik berurutan) dan menolak beberapa alamat yang sebenarnya valid (bagian lokal dalam tanda kutip, domain berupa alamat IP). Satu-satunya cara pasti untuk menguji alamat email adalah dengan mengirim tautan konfirmasi. Di formulir HTML, <input type="email"> sudah memberi validasi bawaan dari browser tanpa perlu kode tambahan.
Regex Tester
Ketik pola dan lihat hasil cocok langsung ter-highlight di teks ujimu.