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функциясын,
ол жолды қарапайым бөлгіш бойынша бөледі