Регулярные выражения в PHP

Регулярные выражения в PHP.

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

Есть три типичных способа использования регулярных выражений:
— извлекать информацию из строки, соответствующей шаблонам;
— подстановка нового текста вместо текста, соответствующего шаблонам;
— разделение линии на несколько более мелких.

PHP имеет функции для всех приложений. Например, preg_match () проверяет строку на наличие регулярного выражения. Долгое время язык Perl считался эталоном для тестирования производительности мощных регулярных выражений. В языке PHP используется библиотека C rsge, которая обеспечивает практически полную поддержку всего арсенала функций Perl для работы с регулярными выражениями. Регулярные выражения Perl работают с двоичными данными, поэтому вы можете безопасно работать с шаблонами или строками, содержащими байты NUL (\ x00).

4.8.1. Основы использования регулярных выражений Большинство символов в регулярном выражении являются литералами и означают сами себя. Например, если вы ищете регулярное выражение «/ 123 /» в строке «456 1238», вы найдете совпадение, потому что «123» встречается в строке.

У некоторых символов в регулярных выражениях есть специальное назначение. Например, символ ^ в начале имен сообщений означает, что вам нужно искать совпадение в начале строки (или, точнее, привязывает регулярное выражение к началу строки):

preg_match («/ Al 23 /», «456 1 238-й);

// возвращает ложь preg_match («/ Al 23 /», «1 2345678»); // возвращает true

Точно так же знак доллара ($) привязывает регулярное выражение к концу строки:

preg_match («/ l $ 23 /», «4561238 987»); // возвращает false

preg_match («/ l $ 23 /», «87654 123»); // возвращает true

Точка в регулярных выражениях соответствует одному символу:

preg_match («/ c. t /», «кот»); preg_match («/ c. t /,» вырезать «); preg_match (» / c. t / «,» zt «); preg_match (» / c. t / «,» летучая мышь «), preg_match (» / c. т / «,» кт «);

// возвращает true // возвращает true // возвращает true

// возвращает false // возвращает false

Если вы хотите найти один из этих специальных символов (они называются метасимволами), вам необходимо отобразить их обратной косой чертой:

preg_match («/\$5\.00», «Баланс вашего счета составляет $ 5.00 правильно»);

// true true preg_match («/ $ 5.00», «Баланс вашего счета составляет 5 долларов США правильно»); // ложный

Если вы хотите найти один из этих специальных символов (они называются метасимволами), вам необходимо отобразить их обратной косой чертой:

preg_motch («/\$5\.00», «Баланс вашего счета составляет $ 5.00 правильно»);

// true true preg_match («/ $ 5.00», «Баланс вашего счета составляет 5 долларов США правильно»); // ложный

По умолчанию регулярные выражения чувствительны к регистру, поэтому выражение «/ cow /» не соответствует строке «COW». Если вы хотите выполнить поиск без регистрации, вам необходимо установить специальный флаг (позже в этом разделе вы узнаете, как это сделать).

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

В регулярном выражении можно указать три основных типа абстрактных паттернов:

— Набор допустимых символов, которые могут появляться в строке (например, буквенные символы, числовые символы, символы публикации).
— Набор альтернатив для строки (например, «com», «edu», «net» ИЛИ «org»)
— Повторить последовательность в строке (то есть хотя бы один, но не более пяти цифровых символов).

Эти три типа шаблонов можно комбинировать бесчисленным количеством способов в регулярном выражении. Например, вы можете сформулировать регулярное выражение для поиска действительных номеров телефонов и URL-адресов.

Самостоятельная разработка  комплексных проектов и их последующее продвижение — непростая задача. Если справиться самостоятельно не получается — можно делегировать всю или часть задач опытным специалистам https://webfocus.by/. Перейдя по ссылке вы сможете более подробно ознакомиться с доступным перечнем услуг, а также актуальными ценами!

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *