arşiv

yazılar buna göre etiketlendi; ‘regex yazı dizisi’

REGEX – Negatif Karakter Sınıfları

Pazartesi, 07 Eyl 2009 yorum yok

Eğer karakter sınıflarında gördüğümüz [...] yerine [^...] kullanırsanız belirlediğiniz kriterlere uymayan yerleri listelersiniz. Örneğin [^2-7] regex’i 2 ve 7 arasında olmayan karakterlerle eşleşir. Yani karakter sınıfının başındaki ^ metakarakteri, karakter sınıfının içerisindeki karakterleri istemediğinizi belirtir.

Birkaç yazı önce Regex ile Satır başı ve Satır sonu konusunu işlemiştik. Dikkat ettiyseniz o yazıda ^ metakarakterinin satır başını ifade ettiğini söylemiştik. Şimdi ise karakter sınıfını negatife çevirdiğini söylüyoruz. Bu da demek oluyorki REGEX‘te metakarakterlerin işlevleri kullanıldığı yere göre değişiyor. Tıpkı sesteş sözcükler gibi. Kullanıldığı yere göre değişik anlamlar alabiliyorlar.

devamını oku…


Paylaş:
  • Facebook
  • FriendFeed
  • Twitter
  • del.icio.us
  • Digg
  • StumbleUpon
  • Technorati
  • LinkedIn
  • MySpace
  • BlinkList
  • Reddit
  • RSS
  • email
  • PDF

REGEX – Karakter Sınıfları

Cumartesi, 05 Eyl 2009 yorum yok

Diyelimki bir yazı içerisinde geçen “makina” kelimelerini bulmak istiyorsunuz. Fakat bildiğiniz üzere makina kelimesini makine diye yazanlar da var, makina diye yazanlar da.

[...] yapısı, REGEX‘te karakter sınıfı olarak bilinir. e sadece e’leri, a sadece a’ları bulurken, [ea] her ikisini de bulur. Yazının içerisinde geçen makina ve makine kelimelerini bulmak için makin[ae] düzenli ifadesini kullanıyoruz. Bu düzenli ifade sayesinde yazı içerisinde ardından a veya e gelen makin kelimelerini buluyoruz.

Verilebilecek başka bir örnek ise istenilen yerlerde büyük-küçük harfe izin verilmesi durumlarıdır. Örneğin yazının içerisinde geçen hüseyin ve Hüseyin kelimelerini bulmak istediğinizde [Hh]üseyin regex‘ini kullanabilirsiniz. (Bu durum sizi korkutmasın, günümüzde pek çok Regex implementasyonunda büyük-küçük harf ayrımı gözardı edilebilmekte, ileriki yazılarda göreceğiz.)

devamını oku…


Paylaş:
  • Facebook
  • FriendFeed
  • Twitter
  • del.icio.us
  • Digg
  • StumbleUpon
  • Technorati
  • LinkedIn
  • MySpace
  • BlinkList
  • Reddit
  • RSS
  • email
  • PDF

REGEX – Satır Başı ve Satır Sonu

Cuma, 04 Eyl 2009 yorum yok

REGEX yazı dizimizin ilk bölümünde satır başı ve satır sonu‘nu işleyeceğiz. Muhtemelen anlayabileceğiniz en kolay bölüm bu olduğu için burdan başlıyorum. ^ metakarakteri satır başlarını, $ metakarakteri ise satır sonlarını ifade eder.

^Hüseyin : Satır başlarındaki “Hüseyin“leri bulur

Hüseyin$ : Satır sonlarındaki “Hüseyin“leri bulur.

^Hüseyin$ : Aynı anda hem satır başında, hem de satır sonunda bulunan “Hüseyin“leri bulur. Yani içerisinde sadece “Hüseyin” geçen satırları bulur.

^$ : Satır başından hemen sonra gelen satır sonlarını bulur. Yani boş satırları bulur.
devamını oku…


Paylaş:
  • Facebook
  • FriendFeed
  • Twitter
  • del.icio.us
  • Digg
  • StumbleUpon
  • Technorati
  • LinkedIn
  • MySpace
  • BlinkList
  • Reddit
  • RSS
  • email
  • PDF

Düzenli İfadeler (Regular Expressions) Yazı Dizisi – Giriş

Çarşamba, 02 Eyl 2009 yorum yok

Merhabalar!!

Yeni bir yazı dizisine başlıyorum, sizlere Düzenli İfadeler, bir başka deyişle Regular Expressions, daha başka bir deyişle Regex ve hatta Regexp anlatmaya çalışacağım. Gördüğünüz gibi alternatif çok, fakat ben yazılarımda REGEX ‘i kullanacağım. Peki nedir bu Regex? Kısaca bir yazının içinden istediğimiz bir kısmını bulmaya/değiştirmeye yarar. Bir yazının içindeki tüm Whosayin leri bulmak veya değiştirmek kolaydır, bunun için Regex’e ihtiyaç yoktur. Herhangi bir metin editöründe rahatlıkla yapabiliriz. Fakat diyelimki birşeyler oldu ve 3 tane rakam, ardından 3 tane harf ve ardından gelen Whosayin leri bulmak istedik. Olamaz mı yani? İsteyebiliriz. Herhangi bir metin editorunde bunu nasıl bulabiliriz? Sanırım bulamayız. İşte burada Regex imdatımıza yetişiyor, istediğimiz şeyi hemen buluyoruz, istersek de başka birşeyle değiştiriyoruz.

devamını oku…


Paylaş:
  • Facebook
  • FriendFeed
  • Twitter
  • del.icio.us
  • Digg
  • StumbleUpon
  • Technorati
  • LinkedIn
  • MySpace
  • BlinkList
  • Reddit
  • RSS
  • email
  • PDF