preg_split Fonksiyonu
preg_split fonksiyonu, bir stringi dizi elemanlarına böler, ayırıcıları bulmak için düzenli ifade kullanır. İlk parametre olarak düzenli ifadeyi, ikinci parametre olarak kaynak stringi alır. Üçüncü isteğe bağlı parametre, sonuçtaki dizi elemanlarının sayısını belirler. Dördüncü isteğe bağlı parametre,
fonksiyonun davranışını değiştiren bayrakları belirler.
Sözdizimi
preg_split(pattern, subject, [limit], [flags]);
Bayraklar
| Bayrak | Sabit | Açıklama |
|---|---|---|
PREG_SPLIT_NO_EMPTY |
1 | Sadece bölme işleminden sonra boş olmayan parçaları döndürür. |
PREG_SPLIT_DELIM_CAPTURE |
2 | Düzenli ifadedeki alt kalıplarla eşleşen parçaları yakalar ve döndürür. |
PREG_SPLIT_OFFSET_CAPTURE |
4 | Döndürülen her bir parça için, kaynak string içindeki pozisyonunu ekler. |
Örnek
Stringi virgüllere göre bölelim:
<?php
$res = preg_split('/,/', 'a,b,c,d,e');
var_dump($res);
?>
Kodun çalıştırma sonucu:
['a', 'b', 'c', 'd', 'e']
Örnek
Stringi herhangi bir boşluk karakterine göre, eleman sayısı sınırlaması ile bölelim:
<?php
$res = preg_split('/\s+/', '1 2 3 4 5', 3);
var_dump($res);
?>
Kodun çalıştırma sonucu:
['1', '2', '3 4 5']
Örnek
Boş elemanları hariç tutmak için PREG_SPLIT_NO_EMPTY bayrağının kullanımı:
<?php
$res = preg_split('/[,\s]/', 'a,b, c, ,d', -1, PREG_SPLIT_NO_EMPTY);
var_dump($res);
?>
Kodun çalıştırma sonucu:
['a', 'b', 'c', 'd']
Ayrıca Bakınız
-
preg_matchfonksiyonu,
düzenli ifade ile arama yapar -
explodefonksiyonu,
bir stringi basit bir ayırıcıya göre böler