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

phppreg_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<?php
  $res = preg_split('/,/', 'a,b,c,d,e');
  var_dump($res);
?>

Kodun çalıştırma sonucu:

php['a', 'b', 'c', 'd', 'e']

Örnek

Stringi herhangi bir boşluk karakterine göre, eleman sayısı sınırlaması ile bölelim:

php<?php
  $res = preg_split('/\s+/', '1 2 3 4 5', 3);
  var_dump($res);
?>

Kodun çalıştırma sonucu:

php['1', '2', '3 4 5']

Örnek

Boş elemanları hariç tutmak için PREG_SPLIT_NO_EMPTY bayrağının kullanımı:

php<?php
  $res = preg_split('/[,\s]/', 'a,b, c, ,d', -1, PREG_SPLIT_NO_EMPTY);
  var_dump($res);
?>

Kodun çalıştırma sonucu:

php['a', 'b', 'c', 'd']

Ayrıca Bakınız

  • preg_match fonksiyonu,
    düzenli ifade ile arama yapar
  • explode fonksiyonu,
    bir stringi basit bir ayırıcıya göre böler