(PHP 5 >= 5.3.0)
preg_filter — Bir düzenli ifade arama ve değiştirmesi yapar
$şablon
, mixed $yenisi
, mixed $konu
[, int $sınır
= -1
[, int &$sayı
]] )preg_filter() sadece eşleşenleri döndürmesi dışında preg_replace() işlevi gibidir. Bu işlevin nasıl çalıştığıyla ilgili ayrıntılar için preg_replace() belgesini okuyun.
şablon
yenisi
konu
sınır
sayı
konu
değiştirgesi bir dizi ise bir dizi döndürür aksi takdirde bir dizge döner.
Eşleşmeler bulunduğu takdirde yeni konu
döner, aksi
takdirde bir hata oluşmamışsa konu
değiştirilmeden
döndürülür; bir hata oluşmuşsa NULL
döner.
Örnek 1 - preg_filter() ile preg_replace() işlevini karşılaştırma örneği
<?php
$subject = array('1', 'a', '2', 'b', '3', 'A', 'B', '4');
$pattern = array('/\d/', '/[a-z]/', '/[1a]/');
$replace = array('A:$0', 'B:$0', 'C:$0');
echo "preg_filter işlevinin sonucu:\n";
print_r(preg_filter($pattern, $replace, $subject));
echo "preg_replace işlevinin sonucu:\n";
print_r(preg_replace($pattern, $replace, $subject));
?>
Yukarıdaki örneğin çıktısı:
preg_filter işlevinin sonucu: Array ( [0] => A:C:1 [1] => B:C:a [2] => A:2 [3] => B:b [4] => A:3 [7] => A:4 ) preg_replace işlevinin sonucu: Array ( [0] => A:C:1 [1] => B:C:a [2] => A:2 [3] => B:b [4] => A:3 [5] => A [6] => B [7] => A:4 )