вообще там универсальный Домен. Любой пройдет. запись {3,} значит от 3х символов и больше. (причем это только первое слово в домене) а последующие от 2х символов и больше. Твой домен проходит под это регулярное выражение.
А можно еще немного скорректировать это с учетом что name - имя абстрактное и может принимать любые значения?
|
Ну если совсем любое то:
$str = 'name||domain.com';
preg_match('#^.+\|\|[a-z0-9-]{3,}(\.[a-z0-9-]{2,})+$#', $str);
если только слово:
$str = 'name||domain.com';
preg_match('#^\w+\|\|[a-z0-9-]{3,}(\.[a-z0-9-]{2,})+$#', $str);
причем если в имени будет использоваться например русский язык то нужно модификатор 'u' поставить (UTF-

и 'i' если без учета регистра
$str = 'name||domain.com';
preg_match('#^\w+\|\|[a-z0-9-]{3,}(\.[a-z0-9-]{2,})+$#u', $str);
можно только англ. буквы и цифры
$str = 'name||domain.com';
preg_match('#^[a-z0-9]+\|\|[a-z0-9-]{3,}(\.[a-z0-9-]{2,})+$#', $str);