Regex


Zaman:23-05-2012 13:09

Regular Expression

Regular Expression php ile arama ve değiştirme işlemlerinde kullanılan özel bir sistemdir. Bunu farklı ortamlardaki * karakterine benzetebilirsiniz. adını bilmediğimiz bir kelimenin yerine * koyarak aram yapabiliriz.

Örneğin windows ile bir dosya ararken *.doc dediğinizde windows size uzantısı DOC olan tüm dosyaları gösterecektir. buradaki * karakteri bilinmeyen isim anlamına gelmektedir. işte regular expression (kısaca regex) tam olarak buna benzer bir işlem yapmaktadır. yine benzetmeden yola çıkarak devam etmek gerekirse regex ile kullanılan bilinmeyen kelime ? (soru işareti) veya... Devamı


ereg_replace

Ereg replace fonksiyonu yazı içersinde bir kelimeyi bulup değiştirmeye yarar. Verilen parametrelere göre aynı anda birçok değişiklik yapabilir.

Ereg replace ile birlikte paramatre olarak kullanılan Regex (Regular Expression) kendi başına büyük bir sistemdir. ve birçok uygulamada karşınıza çıkabilir.

Dikkat: Php 4 sonrasında bu fonksiyon yerine daha hızlı olan Preg_replace kullanılmaya başlamıştır.

 

Ereg replace için örnek:

$metin= ereg_replace("aranacak","yenisi", $metin );

 

Ereg replace ile Regex örneği:

$convertStr = ereg_replace(... Devamı


Preg_Replace

Php Preg Replace

Özel karakter kullanarak arama yapmayı sağlayan bir fonksiyondur. Örnek vermek gerekirse Windows ortamında F3 tuşu ile bir dosya ararken "Makale.doc" yazdığınızda bulamadınız diyelim. O zaman arama kutusuna *.doc yazarsanız adı ne olursa olsun dosya tipi Word dosyası olan tüm herşeyi bulmuş olursunuz. Preg Replace komutu da bir yazı içersinde arama yapar ve bu mantıkla çalışır.

 

örnek: Diyelim ki bir yazıdaki şeftali,şefkat,şefik şeklindeki tüm kelimeleri armut olarak değiştirmek istiyoruz. bu durumda hepsindeki ortak kelime olan şef kısmını kullanara... Devamı


Mysql ile Regex kullanımı

Mysql içersinde kullanılan Regex komutları birçok standart parametreyi kabul eder.

Örnek olarak: Diyelim ki sitenizdeki bazı üyeler isminin olması gereken yere yanlışlıkla telefon numarasını yazmış. Bu durumda sayı ile başlayan kayıtları listelemek yeterli olacaktır. Regex sayesinde bunu tek satırda yapmak mümkün

SELECT * FROM tablo WHERE isim REGEXP ´^[0-9]´

Başka bir örnek: Adının başında abd veya apd olan üyeleri listeleyelim.

SELECT * FROM tablo WHERE isim REGEXP ´^(apd|abd)´ ORDER BY numara Regex hakkında detay için şuraya bakabilirsiniz: regular expression... Devamı

Preg_Replace modifier listesi

Preg_Replace komutu kullanılırken son kısma eklenen bazı parametreler ek özellikler kazandırır. örneğin "i" karakteri büykü ve küçük harfleri önemsemeden işlem yapmasını sağlar.

 

örnek:yazıda geçen tüm Ali isimlerini Veli yapar. aLi şeklinde yazılsa bile işlem çalışır.

$yazi= preg_replace('/Ali/i','Veli', $yazi);

i: küçük ve büyük harflerde arar

m : Yazıdaki enter karakterlerini yok sayar yazı dümdüz gidyormuş gibi çalışır. Eğer kullanılan arama kelimesinde ^ ve $  kullanılmazsa işe yaramaz.

s: aramada kullanılan nokta karakteri satır geçişlerini de kabul... Devamı


preg_match parametreleri

Preg match ve preg replace gibi konutlarla kullanılan parametrelerin toplu listesi. kendim hazırladım. bizde (ç)alıntı yok

 

Özel sıra\w  harfler (a-z 0-9 _)\W  harf olamayanlar\s  Boşluk ve tab\S boşluk olmayan herşey\d  Sayılar (0-9)\D  Sayı olmayanlar.   yeni satır hariç herşeySınırlar^  Satır başı$  satır sonu[  grup karakter başı]  grup karakter sonu|  veya(  alt cümle başı)  alt cümle sonu\  özel karakter iptalSayıcılarn*  sıfır veya sonsuzn+  en az bir tane ve sonsuzn?  sıfır veya 1 karakter{n}  n sayıda karakter{n,}  en az n karakter{n,m}  n ve m arasında (dahil)Özel t... Devamı


www.Phpkodlari.com © 2009 Herkes Php öğrenecek
Web tasarım ve eğitim kaynağınız.