Часто preg_match
используется для
проверки на соответствие регулярному выражению
всей строки. В таком случае в начале регулярки
следует поставить шляпку ^
, а в конце
- доллар $
. Этим мы говорим, что под
шаблон должна попасть вся строка.
Давайте для примера узнаем, состоит ли строка
целиком из букв 'a'
, или нет:
<?php
echo preg_match('#^a+$#', 'aaaa'); // выведет 1
echo preg_match('#^a+$#', 'aaab'); // выведет 0
?>
Определите, является ли переданная строка является доменом. Используйте для тестов следующие строки:
<?php
$arr[] = 'site.ru'; // +
$arr[] = 'site.com'; // +
$arr[] = 'my-site.com'; // +
$arr[] = 'my-cool-site.com'; // +
$arr[] = 'my_site.com'; // +
$arr[] = 'site123.com'; // +
$arr[] = 'site.travel'; // +
$arr[] = 'si$te.com'; // -
$arr[] = 'site.r'; // -
?>
Определите, является ли переданная строка является емейлом. Используйте для тестов следующие строки:
<?php
$arr[] = 'addr@mail.ru'; // +
$arr[] = 'addr123@mail.ru'; // +
$arr[] = 'my-addr@mail.ru'; // +
$arr[] = 'my_addr@mail.ru'; // +
$arr[] = 'addr@site.ru'; // +
$arr[] = 'addr.ru'; // -
$arr[] = 'addr@.ru'; // -
$arr[] = 'my@addr@mail.ru'; // -
?>