Как работает шаблон
| Часть | Значение |
|---|---|
[A-Za-z0-9._%+-]+ | Локальная часть |
@ | Знак @ |
[A-Za-z0-9.-]+\.[A-Za-z]{2,} | Домен и домен верхнего уровня |
g flag | Найти все совпадения, а не только первое |
Примеры кода
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];
Примечания и ограничения
Без якорей ^ и $ шаблон находит адреса в любом месте текста. Вставьте весь документ в Regex Tester, чтобы получить список всех совпадений.
Тестер регулярных выражений
Введите шаблон и смотрите, как совпадения подсвечиваются прямо в тестовом тексте.