PHP Düzenli ifadeler -7 preg_grep() Fonksiyonu
Düzenli ifadeler, geliştiriciler için çok kullanışlı bir araçtır. Bir kelimeyi, karakteri veya herhangi bir diziyi bulmaya, tanımlamaya veya değiştirmeye izin verirler. Bu eğitim size PHP Düzenli ifadesinde nasıl ustalaşacağınızı öğretecek ve herhangi bir web geliştiricisinin araç setinde olması gereken son derece kullanışlı, kullanıma hazır PHP düzenli ifadelerini Konusunu gösterecektir.
preg_grep
fonksiyonu dizilerle çalışmak için kullanışlıdır. Bir dizi alır ve Düzenli ifadeyle eşleşen filtrelenmiş bir dizi öğe döndürür.
Sözdizimi:
pattern : Gereklidir. Ne aranacağını gösteren normal bir ifade içerir.
input : Gereklidir. Bir dizi
flags : İsteğe bağlı. Bu fonksiyon için yalnızca bir bayrak vardır. PREG_GREP_INVERT
sabitini geçmek, fonksiyon yalnızca modelle eşleşmeyen öğeleri döndürmesini sağlar.
ÖRNEK : İçinde "e" harfi geçen Kelimelerden yeni bir dizi yap.
<?php
$besin = ["Elma", "Muz", "erik", "Kayısı", "Ekmek", "Kekik" ];
$pattern = "/e/";
$components = preg_grep($pattern, $besin);
echo "<pre>";
print_r($components);
echo "</pre>";
?>
ÇIKTI:
Array ( [2] => erik [4] => Ekmek [5] => Kekik )
Yukarıda örnekte Elma'yı almadı nedeni büyük_küçük harfe dikkat etti. Ekmek ise diziye aldı çünkü içinde küçük e harfi var.
Büyük - Küçük harfe dikkat etmemesi için patternemizde "İ" bayrağı ekleyelim.
/e/i
ÖRNEK 2:
<?php
$besin = ["Elma", "Muz", "erik", "Kayısı", "Ekmek", "Kekik" ];
$pattern = "/e/i";
$components = preg_grep($pattern, $besin);
echo "<pre>";
print_r($components);
echo "</pre>";
?>
ÇIKTI:
Array ( [0] => Elma [2] => erik [4] => Ekmek [5] => Kekik )
Yukarıda Örnekte "e" harfi geçen Tüm kelimeler geldi.
ÖRNEK 3: "A" harfi ile başlayan bir diziden öğeler alın:
<?php
$input = ["Akşam", "ElmA", "Abi", "Ekmek", "Ayakkabı", "Akü"];
$pattern = "/^A/";
$components = preg_grep($pattern, $input);
echo "<pre>";
print_r($components);
echo "</pre>";
?>
ÇIKTI:
Array ( [0] => Akşam [2] => Abi [4] => Ayakkabı [5] => Akü )
Yukarıda örnekte "A" harfi ile başlayan kelimeleri getirmiştir. "ElmA" Kelimesindede "A" harfi var; Ama patternemiz'de "A" Harfi ile başlayan dediğimiz için getirmedi.
ÖRNEK 4: Dizide "js" Kelimesi geçen Elemanlardan yeni bir dizi oluşturun.
<?php
$input = ["vue js", "Angular", "css", "React js", "html", "Node js"];
$pattern = "/js/";
$components = preg_grep($pattern, $input);
echo "<<pre>";
print_r($components);
echo "</pre>";
?>
ÇIKTI:
Array ( [0] => vue js [3] => React js [5] => Node js )
Diğer regex Konularin Linki
- HTML
- CSS
- PHP
- JQUERY
- PHOTOSHOP
- JavaScript
- Web Dünyası
- Linux
- MİTHRİL FRAMEWORK
- Laravel
- Git
- React
- HTML LİNK(Bağlantı)EKLEME - LİNK VERME
- HTML YAZI VE RESİM ORTALAMA
- HTML RESME LİNK VERME
- HTML FORM OLUŞTURMA
- CSS YATAY MENÜ YAPIMI
- HTML RESİM EKLEME
- CSS (BOYUT) GENİŞLİK VE YÜKSEKLİK (Width-Height)
- HTML DİV ve SPAN NEDİR?
- HTML ARKAPLANA MÜZİK EKLEME
- KALİTE KAYBETMEDEN RESİMLERİ BÜYÜTME