Новые книги

Эрминия Ибарра, профессор с мировым именем, преподаватель INSEAD, бросает вызов общепринятому мнению о лидерстве. Согласно ее концепции «восприятия извне», чтобы научиться думать как лидер, вам необходимо начать действовать как лидер. При помощи практических инструментов из этой книги вы сможете стать лидером, которому доверяют, ради которого не боятся рисковать, которого уважают и которым восхищаются.
Наше поведение далеко от того, чтобы именоваться рациональным: поддавшись панике, мы сметаем товары с полок в магазинах, даже если продавцы повышают цены; конкурентных рынков в природе нет и никогда не было; принимая решение купить тот или иной товар, мы ориентируемся на слухи и свои собственные эмоции, а не на факты; а если бы рыночное равновесие существовало, то кризисы были бы невозможны.

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

Книга подойдет руководителям и собственникам бизнеса, менеджерам отделов продаж, маркетинга, рекламы и PR – всем, кому по долгу службы необходимо уметь принимать правильные решения; обязательна к прочтению всем, кто хочет добиться осознанности своих решений и повысить собственную эффективность.

preg_match

Учебник РНР
Назад Вперёд

preg_match

(PHP 3>= 3.0.9, PHP 4)

preg_match - выполняет подстановку регулярного выражения.

Описание

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

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

Если matches предоставлен, он заполняется результатами поиска. $matches[0] будет содержать текст, совпавший со всем патэрном, $matches[1] будет содержать текст, совпавший первым захваченным субпатэрном в скобках, и так далее.

flags это:

PREG_OFFSET_CAPTURE

Если этот флаг установлен, для каждого найденного совпадения будет возвращаться сопутствующее строковое смещение. Заметьте, что это изменяет return-значение в массиве, где каждый элемент является массивом, состоящим из совпавшей строки и в смещении 0 и её строковым смещением в subject в смещении 1. Этот флаг доступен, начиная с PHP 4.3.0.

Параметр flags доступен, начиная с PHP 4.3.0.

preg_match() возвращает количество совпадений pattern. Это будет либо 0 раз (нет совпадений), либо 1 раз, поскольку preg_match() остановит поиск после первого найденного совпадения. preg_match_all(), наоборот, продолжит поиск до достижения конца subject. preg_match() возвращает 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.";
}
Пример 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().


Назад Оглавление Вперёд
preg_match_all Вверхpreg_quote