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

Düzenli İfadelerde Kullanılabilecek Özel Karakterler

Düzenli ifadelerde hangi karakterler kullanılır ¿


Düzenli ifadelerde kullanılan bir çok karakter bu karakterleri bir word belgesi halinde sunmak istedim.Bunları ezberlemek zor olabilir.Döküman halinde elinizin altında bulunursa problem yaşamazsınız.

Düzenli İfadelerde Kullanılan Karakterler İNDİR

Eşleştirme Deyimler ve İşaretleri

Eşleştirme ifadelerinden ilki “şapka işareti” diye tabir ettiğimiz “^” dir. Örnek olarak bir şiir metni aldım ve bu şiir metninde eşleştirme ifadelerini deneyeceğiz.

Cumhuriyet tarihin okuyup okutalım // 1. SATIR
O günlerde savaşan şehitleri analım // 2. SATIR
Atatürk ulu önder, gönülde yaşatalım // 3. SATIR
Hep rehberlik edecek Atatürk ilkleri // 4. SATIR

Bu şiir içinde arama yapacağız şimdi.İlk düzenli ifademiz ^Atatürk.
Şapkadan sonra gelen kelime ile başlayan satırı bul demektir.^Atatürk kelimesi ile arama yaptığında 3. satırı bulacaktır. 4. satırdada Atatürk kelimesi geçmektedir ama Atatürk kelimesi ile başlamadığı için bulmaz.

Cumhuriyet tarihin okuyup okutalım
O günlerde savaşan şehitleri analım
Atatürk ulu önder, gönülde yaşatalım
Hep rehberlik edecek Atatürk ilkleri

Şimdide $ işareti ile arama yapalım.$ işaretinden önce yazılan kelime ile biten satırları bul demektir.
analım$ ifadesini kullandığımızda bize ikinci satırı gösterecektir.

Cumhuriyet tarihin okuyup okutalım
O günlerde savaşan şehitleri analım
Atatürk ulu önder, gönülde yaşatalım
Hep rehberlik edecek Atatürk ilkleri

Şimdide hem şapka işareti hemde $ işareti ile bir düzenli ifade kullanıp arama yapmayı deneyelim.
Arama cümlemiz şöyle olsun. ^Atatürk$ Bu ifade hem Atatürk ile başlayan hemde Atatürk ile biten satırları bulmamızı sağlar.Bizim şiirimizde bu ifade biçiminde herhangi bir sonuç olmadığı herhangi bir sonuç geri dönmez.

Bu seferde düzenli ifade karakterlerini kullanmadan bir arama yapalım ne dersiniz.Atatürk kelimesini tek başına aratalım.Bu arama biçimi ise içinde Atatürk geçen satırları bulacaktır.Cümlenin başında veya sonunda olmasının herhangi bir önemi yoktur.

Cumhuriyet tarihin okuyup okutalım
O günlerde savaşan şehitleri analım
Atatürk
ulu önder, gönülde yaşatalım
Hep rehberlik edecek Atatürk ilkleri