Функция preg_split
Функцията preg_split разделя низ на елементи от масив, като използва регулярен израз за търсене на разделители. Приема регулярен израз като първи параметър, а изходния низ като втори. Третият незадължителен параметър задава броя на елементите в масива в крайния резултат. Четвъртият незадължителен параметър задава
флагове, които променят поведението на функцията.
Синтаксис
preg_split(pattern, subject, [limit], [flags]);
Флагове
| Флаг | Константа | Описание |
|---|---|---|
PREG_SPLIT_NO_EMPTY |
1 | Връща само непразни части след разделяне. |
PREG_SPLIT_DELIM_CAPTURE |
2 | Улавя и връща части от съвпадението с подшаблони в регулярния израз. |
PREG_SPLIT_OFFSET_CAPTURE |
4 | За всяка върната част добавя нейната позиция в оригиналния низ. |
Пример
Нека разделим низ по запетаи:
<?php
$res = preg_split('/,/', 'a,b,c,d,e');
var_dump($res);
?>
Резултат от изпълнението на кода:
['a', 'b', 'c', 'd', 'e']
Пример
Нека разделим низ по всякакви интервални символи с ограничение на броя елементи:
<?php
$res = preg_split('/\s+/', '1 2 3 4 5', 3);
var_dump($res);
?>
Резултат от изпълнението на кода:
['1', '2', '3 4 5']
Пример
Използване на флага PREG_SPLIT_NO_EMPTY за изключване на празни елементи:
<?php
$res = preg_split('/[,\s]/', 'a,b, c, ,d', -1, PREG_SPLIT_NO_EMPTY);
var_dump($res);
?>
Резултат от изпълнението на кода:
['a', 'b', 'c', 'd']
Вижте също
-
функцията
preg_match,
която извършва търсене по регулярен израз -
функцията
explode,
която разделя низ по прост разделител