Regex untuk mencari semua alamat email dalam teks

Gunakan /[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}/g untuk menemukan setiap kecocokan dalam sebuah teks. Setiap contoh di bawah sudah diuji terhadap pola ini, dan kamu bisa membukanya di Regex Tester dengan contoh teks yang sudah dimuat.

Diperbarui

/[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}/g
Buka di Regex Tester

Contoh teks

Contact sales@example.com or support@devpack.app. Jane (jane.doe+news@mail.example.co.uk) replied; ignore @handles and user@localhost.

3 kecocokan

sales@example.com support@devpack.app jane.doe+news@mail.example.co.uk

Cara kerja pola ini

BagianArti
[A-Za-z0-9._%+-]+Bagian lokal
@Tanda @
[A-Za-z0-9.-]+\.[A-Za-z]{2,}Domain dan domain tingkat atas
g flagTemukan setiap kecocokan, bukan hanya yang pertama

Contoh kode

JavaScript

const matches = text.match(/[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}/g) ?? [];

Python

import re

matches = re.findall(r'[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}', text)

PHP

preg_match_all('/[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}/', $text, $m);
$matches = $m[0];

Catatan dan batasan

Tanpa anchor ^ dan $, pola ini akan menemukan alamat di mana saja dalam teks. Tempel seluruh dokumen ke Regex Tester untuk menampilkan setiap kecocokan.

Pertanyaan yang sering diajukan

Apa regex untuk mencari semua alamat email dalam teks?
/[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}/g — pola ini menemukan setiap kecocokan dalam teks. Lihat tabel di atas untuk penjelasan tiap bagiannya.
Apakah bisa dipakai di Python dan PHP?
Bisa — contoh kode di atas memakai pola yang sama dengan re di Python dan fungsi preg di PHP.
Bagaimana cara menguji regex ini?
Klik “Buka di Regex Tester” — pola, flag, dan contoh teks akan dimuat otomatis, dan kecocokan akan disorot saat kamu mengedit.