Разделение строк и практические шаблоны
Разделяйте строки с помощью preg_split и создавайте распространённые шаблоны проверки
«Разделение строк и практические шаблоны» — бесплатный урок PHP Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения PHP Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс PHP Academy содержит 4 уроков всего.
Сигнатура preg_split()
preg_split($pattern, $subject, $limit, $flags) разделяет строку по разделителю — регулярному выражению — и возвращает массив подстрок.
Простое разделение
Разделите строку по любой последовательности пробельных символов.
<?php
$words = preg_split('/\s+/', "Hello World\tFoo");
print_r($words); // ["Hello", "World", "Foo"]Разделение с ограничением
Третий параметр ограничивает количество возвращаемых частей. Последняя часть содержит остаток строки.
<?php
$parts = preg_split('/,\s*/', "a, b, c, d", 3);
print_r($parts); // ["a", "b", "c, d"]PREG_SPLIT_NO_EMPTY
Флаг PREG_SPLIT_NO_EMPTY удаляет из результата пустые строки — это полезно, если во входных данных есть последовательные разделители.
<?php
$parts = preg_split('/,/', "a,,b,,c", -1, PREG_SPLIT_NO_EMPTY);
print_r($parts); // ["a", "b", "c"]PREG_SPLIT_DELIM_CAPTURE
Включите разделитель и его захваченные группы в результирующий массив.
<?php
$parts = preg_split('/(,)/', "a,b,c", -1, PREG_SPLIT_DELIM_CAPTURE);
print_r($parts); // ["a", ",", "b", ",", "c"]Шаблон проверки адреса электронной почты
Практический шаблон регулярного выражения для адреса электронной почты, упрощённо соответствующий RFC 5322:
<?php
function validEmail(string $s): bool {
return (bool) preg_match(
'/^[a-zA-Z0-9._%+\-]+@[a-zA-Z0-9.\-]+\.[a-zA-Z]{2,}$/',
$s
);
}Шаблон проверки URL
Проверьте URL-адреса http/https.
<?php
function validUrl(string $s): bool {
return (bool) preg_match(
'#^https?://[\w\-]+(\.[\w\-]+)+(/[^\s]*)?$#i',
$s
);
}Шаблон номера телефона
Разрешите необязательный код страны, тире, точки или пробелы между группами цифр.
<?php
$pattern = '/^\+?[1-9]\d{0,2}[\s\-.]?\d{3}[\s\-.]?\d{4,7}$/';
preg_match($pattern, '+1 800 555-1234', $m);Шаблон надёжности пароля
Требуйте не менее 8 символов, включая одну прописную букву, одну цифру и один специальный символ.
<?php
function strongPassword(string $p): bool {
return preg_match('/^(?=.*[A-Z])(?=.*\d)(?=.*[^\w]).{8,}$/', $p);
}Шаблон адреса IPv4
Проверьте адрес IPv4 (каждый октет от 0 до 255).
<?php
$ipv4 = '/^(25[0-5]|2[0-4]\d|[01]?\d\d?)(\.(25[0-5]|2[0-4]\d|[01]?\d\d?)){3}$/';Шаблон формата даты
Проверьте строки дат в формате YYYY-MM-DD.
<?php
$date = '/^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$/';
var_dump((bool) preg_match($date, '2025-06-15')); // trueИтоги
preg_split разделяет строки по шаблону. Существуют практические шаблоны для адресов электронной почты, URL, телефонов и дат — для стандартных типов всегда предпочитайте filter_var.
Быстрая проверка
Какой флаг удаляет пустые строки из результатов preg_split?
Часто задаваемые вопросы
Урок «Разделение строк и практические шаблоны» бесплатный?
Да — полный текст урока «Разделение строк и практические шаблоны» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс PHP Academy, подпишись на CoddyKit PRO. Курс PHP Academy содержит 4 уроков всего.
Чему я научусь в уроке «Разделение строк и практические шаблоны»?
Разделяйте строки с помощью preg_split и создавайте распространённые шаблоны проверки Ты практикуешь PHP Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать PHP Academy?
Предыдущий опыт не требуется. PHP Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Разделение строк и практические шаблоны»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке PHP Academy?
Да. Каждый урок PHP Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Основы синтаксиса регулярных выражений
- Поиск совпадений с preg_match
- Замена текста с помощью preg_replace
- Разделение строк и практические шаблоны