Kontrola celého řetězce pomocí regulárních výrazů v PHP
Často se preg_match používá pro
kontrolu, zda celý řetězec odpovídá regulárnímu
výrazu. V takovém případě by se na začátek regulárního výrazu
měla umístit stříška ^ a na konec
- dolar $. Tím říkáme, že celý
řetězec musí odpovídat vzoru.
Jako příklad si ověřme, zda se řetězec
skládá celý z písmen 'a',
nebo ne:
<?php
echo preg_match('#^a+$#', 'aaaa'); // vypíše 1
echo preg_match('#^a+$#', 'aaab'); // vypíše 0
?>
Určete, zda je předaný řetězec doménou. Pro testy použijte následující řetězce:
<?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'; // -
?>
Určete, zda je předaný řetězec e-mailem. Pro testy použijte následující řetězce:
<?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'; // -
?>