Возможно ли это без использования регулярного выражения?
Например, я хочу проверить, что строка является допустимым доменом:
domain-name
abcd
example
Являются допустимыми доменами. Конечно, они недействительны:
[email protected]
ab$%cd
И так далее. Поэтому в основном это должно начинаться с буквенно-цифрового символа, тогда может быть больше символов alnum плюс дефисс. И он также должен заканчиваться символом alnum.
Если это невозможно, вы могли бы предложить мне шаблон регулярного выражения для этого?
EDIT:
Почему это не работает? Я неправильно использую preg_match?
$domain = '@djkal';
$regexp = '/^[a-zA-Z0-9][a-zA-Z0-9\-\_]+[a-zA-Z0-9]$/';
if (false === preg_match($regexp, $domain)) {
throw new Exception('Domain invalid');
}