Regex de
preg_match_all()
fonksiyonu, veri içerisinde oluşturduğumuz kriter veya ifadeye göre eşlesen tüm kayıtları bize dizi olarak döndürmektedir.Kullanımı :
preg_match_all("/ifademiz/", veri, çıktı);
Aşağıdaki örnek üzerinde en basitinden bir cümle içerisinde bir ifade aratabiliriz.
$veri = "Sezai ALKAN izmit 1998 23 Yaşında";
preg_match_all("/[A-Z]+[a-zşı]+/", $veri, $cikti);
echo "<pre>";
print_r($cikti);
Yukarıdaki örnekte oluşturduğumuz ifade de Büyük harfle başlayan ve küçük harfle biten kelimeleri bulmaktadır ve özel olarak ifadelerimizim içerisinde türkçe karakterleri belirtmemiz gerekmektedir.
Array
(
[0] => Array
(
[0] => Sezai
[1] => Yaşında
)
)
Örneğin çıktısı yukarıdaki gibidir Türkçe karakter olarak ş ve ı harflerini oluşturduğumuz ifade içerisinde belirtmekteyiz.
preg_match()
ve preg_match_all()
fonksiyonları temelde aynı işlevi sağlasada preg_match()
belirtilen ifade ile kontrol sağlamaktadır. preg_match_all()
fonksiyonu ise oluşturduğumuz ifade, veri içerisindeki şartları karşılayan tüm kayıtları bize döndürmektedir.