Birçoğumuzun programlama hayatında önemli yer teşkil eden Regular Expression(Düzenli İfadeler)'lardan bahsetmek istiyorum sizlere. Regular Expression hemen hemen güncel tüm programlama dillerinde yerini almış durumda.

Regular Expression'lar çok uzun bir konu olduğundan dolayı ben sizlere bölüm bölüm anlatmayı uygun görüyorum. İlk bölümümüzden başlayalım.

Peki nedir bu Regular Expression denen olay ve ne işe yarıyor ? Ben Regular Expression'ı yazı boyunca "Regex" olarak isimlendireceğim.

Örnek üzerinden gitmek gerekirse bir text dosyanız var ve bu text dosyası içerisinde bulunan mail adreslerini listemelek istediniz, ya da web sitesi adreslerini ya da formata uygun telefon numaralarını. Bu işlemi normal yoldan gerçekleştirmeye kalkmış olsanız, birsürü zaman kaybı, yorgunluk ve benzeri şikayetlerle bezme noktasına gelebilirsiniz.

Regexler sizlere gelişmiş arama ve değiştirme özellikleri sağlar.

Halbuki Regex kullanarak bu işlemi dakikalar içerisinde gerçekleştirebilirsiniz. Ben size hem C# üzerinde basit bir uygulama ile hem de Asp.net kullanarak Regex uygulamalarını nasıl gerçekleştirebileceğinize dair örnekler vereceğim.
Şimdi öncelikle Regex'leri kullanırken şöyle birşey demeniz gerekiyor "Ben bu ifadeye uygun olanları istiyorum.". Ne demek bu ? Regexlere özel karakterler ve öncelikle bunları bilmeniz gerekiyor. Regex küçük bir kodlama dünyası olarak düşünebilirsiniz. Ben bunları tek tek size anlatmayacağım ama kaynak vereceğim.

Bu ifadeleri öğrenebileceğiniz kaynak siteler;

http://www.csharpnedir.com/articles/read/?id=129
http://www.mydesign.gen.tr/makale/475.html

yukarıda verdiğim siteler ile işin temeline giriş yapabilir ve kendinize derinlere indikçe çok güzel Regex'ler geliştirebilirsiniz. Benim çok sevdiğim ve sık sık takip ettiğim 2 yabancı siteyi de sizlere vermeden geçemeyeceğim.

1.cisi Regex'lerimi test etmek için bana bol zaman kazandıran http://www.regexpal.com bir diğer ikinciside şu ana kadar gördüğüm en gelişmiş Regex Library olan http://www.regexlib.com . Mutlaka takibe almanızı tavsiye ederim.

Siz bunlar ile bir giriş yapın 2.ci bölümümüzde görüşmek üzere ;)

Selametle...