preg_split

(PHP 4, PHP 5, PHP 7)

preg_splitDizgeyi düzenli ifadeye göre böler

Açıklama

preg_split ( string $şablon , string $konu [, int $sınır = -1 [, int $seçenekler = 0 ]] ) : array

Belirtilen dizgeyi belirtilen düzenli ifadeye göre parçalara ayırır.

Değiştirgeler

şablon

Bir dizge olarak aranacak şablon.

konu

Parçalara ayrılacak dizge.

sınır

Belirtildiği takdirde sadece sınır sayıda alt dizge döner. sınır olarak -1, 0 veya NULL belirtilmişse herhangi bir sayı sınırlaması yok demektir ve genellikle seçenekler değiştirgesinin belirtilmesinin gerekli olduğu durumlarda kullanılır.

seçenekler

seçenekler olarak, bit seviyesinde VEYA ( | ) işleci ile birleştirilerek şunlar belirtilebilir:

PREG_SPLIT_NO_EMPTY
Etkin olduğunda işlev tarafından sadece boş olmayan parçalar döndürülür.
PREG_SPLIT_DELIM_CAPTURE
Etkin olduğunda şablon içindeki yaylı ayraçlı ifade yakalanıp döndürülür.
PREG_SPLIT_OFFSET_CAPTURE

Etkin olduğunda, eşleşmenin olduğu son dizgenin başlangıç konumu da döndürülür. Bu seçenek dönen dizideki değeri değiştirir. Dizideki her eleman, 0 indisinde eşleşen alt dizge, 1 indisinde ise alt dizgenin konu içindeki başlangıcını içeren bir diziden oluşur.

Dönen Değerler

konu dizgesinin şablon ile eşleşen parçalarını içeren bir dizi döner.

Sürüm Bilgisi

Sürüm: Açıklama
4.3.0 PREG_SPLIT_OFFSET_CAPTURE eklendi.
4.0.5 PREG_SPLIT_DELIM_CAPTURE eklendi.
4.0.0 seçenekler değiştirgesi eklendi.

Örnekler

Örnek 1 - preg_split() örneği

<?php
// Cümleyi virgül ve boşluk (" ", \r, \t, \n ve \f)
// karakterlerine göre parçalar.
$keywords preg_split("/[\s,]+/""hypertext language, programming");
?>

Örnek 2 - Bir dizgeyi karakterlerine bölmek

<?php
$str 
'string';
$chars preg_split('//'$str, -1PREG_SPLIT_NO_EMPTY);
print_r($chars);
?>

Örnek 3 - Bir dizgeyi sözcüklerine ayırıp başlangıçlarıyla döndürmek

<?php
$str 
'hypertext language programming';
$chars preg_split('/ /'$str, -1PREG_SPLIT_OFFSET_CAPTURE);
print_r($chars);
?>

Yukarıdaki örneğin çıktısı:

Array
(
    [0] => Array
        (
            [0] => hypertext
            [1] => 0
        )

    [1] => Array
        (
            [0] => language
            [1] => 10
        )

    [2] => Array
        (
            [0] => programming
            [1] => 19
        )

)

Notlar

İpucu

Düzenli ifadelerin gücünün gerekli olmadığı durumlar için explode(), str_split() işlevleri daha kullanışlı olabilir.

Ayrıca Bakınız

  • spliti() - Belirtilen dizgeyi harf büyüklüğüne duyarsız olarak düzenli ifadeye göre dizi elemanlarına böler
  • split() - Belirtilen dizgeyi düzenli ifadeye göre dizi elemanlarına böler
  • implode() - Dizi elemanlarını birleştirip bir dizge elde eder
  • preg_match() - Bir düzenli ifadeyi eşleştirmeye çalışır
  • preg_match_all() - Kapsamlı bir düzenli ifade eşleştirmesi yapar
  • preg_replace() - Düzenli ifadeye göre dizgede değişiklik yapar