Navigate / search

ereg() – eregi() Karakter Grubu Aratmak ve Taşımak

PHP nin temel düzenli fonksiyon ifadelerinden birtanesi ereg() fonksiyonudur.Bu fonksiyon arattığımız karakter sıralanışı bulunduğu taktirde bize “True” değerini döndürür.Yazılışı;

ereg("eşleştirileceksıra",$kaynak,$yeni_degisken);

şeklindedir.Bu komut madem karşılaştirma yapıyorda, eşleştirileceksıra da verdiğimiz karakterleri $kaynak değişkenin içinde arıyor duruma göre true false yanıtını veriyorda $yeni_degisken ne ise yarıyor.Fonksiyonun diğer bir beceriside eşleştirilecek karakter $kaynak değişkeninde bulunduğunda yani fonksiyon True yanıtını verdiğinde bulunan değerleri $yeni_degisken ‘imize bir dizi halinde atıyor.

Bu komutun 2 çeşidir vardır.Birincisi ereg() fonksiyonudur ikincisi ise eregi() fonksiyonudur.Mantıksal olarak bakıldığında ikiside aynı görevi yapar fakat ereg() fonksiyonu eşleştirme yaparken büyük küçük harfe duyarlıdır.eregi() fonksiyonu ise karakterlerin büyük yada küçük olduğuna bakmaz.
Hemen bir örnek yapalım:

1
2
3
4
5
6
$metin="Şafak Bilişim";
if (ereg("b",$metin)){
      echo "b harfi bulundu";
      }else{
      echo "b harfi bulunamadı";
}

metin içinde b harfi geçmesine rağmen bulunamadı diyecektir PHP bize.Çünkü b harfi metin içinde büyüktür ve ereg() fonksiyonu büyük küçük harf ayrımı yapar.
Aynı kodları eregi() ile yapalım

1
2
3
4
5
6
$metin="Şafak Bilişim";
if (eregi("b",$metin)){
      echo "b harfi bulundu";
      }else{
      echo "b harfi bulunamadı";
}

Bu sefer ise b harfi bulundu diyecektir PHP bize.Çünkü eregi() fonksiyonu büyük küçük harf ayrımı yapmaz.

Şimdide kullanabileceğimiz bir kod örneği yaratalım.Formdan gelen bir email bilgisi olsun ve bu bilgiyi biz gerçekten email formatında yazılıp yazılmadığını öğrenelim.Bunun için eregi fonksiyonunu aşağıdaki gibi kullanacağız.

1
2
3
4
5
6
$email="info@safakbilisim.com";
if (eregi("^.+@.+\..",$email)){
      echo "Doğru Girildi";
      }else{
      echo "Yanlış Girildi";
}

Bo kodların sonucunda doğru girildi ifadesi dönecektir.Mail adresindeki @ işareti yada noktayı kaldırdığınızda yanlış ifadesi dönecektir