Главная
домен в подарок! подробнее

каталог сайтов www.poiu.ru закрыт. копия сайта www.myphp.net.ru сделана мной без согласия автора, подробнее тут


preg_match

(PHP 3>= 3.0.9, PHP 4 >= 4.0.0)

preg_match -- Представляет строку, соответствующую регулярному выражению.

Описание

int preg_match (string pattern, string subject [, array matches])

Ищет в subject соответствия регулярному выражению, заданному в pattern.

Если matches указано, то ему присваивается результат поиска. $matches[0] будет содержать текст, соответствующий всему шаблону (pattern), в $matches[1] будет текст, соответствующий первому введенному подшаблону (subpattern) и так далее.

Функция возвращает TRUE если соответствующий шаблону текст был найден в subject, или FALSE в обратном случае.

 

Пример 1. Нахождение слова "php" в тексте

// "i" после разделителя шаблона указывает
// на нечувствительность поиска к регистру букв
if (preg_match ("/php/i", "PHP is the web scripting
 language of choice."))
{
    print "A match was found.";
} else {
    print "A match was not found.";
}

Пример 2.Нахождение слова "web"

// \b в шаблоне указывает на границу слова, поэтому только слово
// "web" будет соответствовать шаблону,
// а не части слов типа "webbing" или "cobweb"
if (preg_match ("/\bweb\b/i", "PHP is the web scripting
 language of choice."))
{
    print "A match was found.";
} else {
    print "A match was not found.";
}
if(preg_match("/\bweb\b/i","PHP is the website
scripting language of choice."))
{
    print "A match was found.";
} else {
    print "A match was not found.";
}

Example 3. Получение имени домена из URL

// получение имени хоста из URL
preg_match("/^(http:\/\/)?([^\/]+)/i",
"http://www.php.net/index.html", $matches);
$host = $matches[2];
// получение последних двух частей имени хоста
preg_match("/[^\.\/]+\.[^\.\/]+$/",$host,$matches);
echo "domain name is: ".$matches[0]."\n";

Пример выведет:
domain name is: php.net

Смотрите также preg_match_all(), preg_replace(), и preg_split().

<-Назад

Список всех функций

Если вы заметили ошибку, неточность, либо хотите опубликовть свой перевод неуказанных в разделе функций, пожалуйста, напишите по этому адресу.