C# ile Regular Expressions (Düzenli İfadeler) İşlemleri – Bölüm 2

Bir önceki makalemizde C# ile Regular Expression kullanımı incelemiştik. Bu makalemizde ise kendi Regular Expression desenlerimizi oluşturabilmek amacıyla desenler içinde kullanılabilecek parametrik değerleri inceleyeceğiz.

“.” (Nokta) Karakter Parametresi

Karakter parametresi ile kontrol yapılacak veri içeriğinde kullanıldığı alanda herhangi bir karakterin olup olmadığı koşulu kontrol edilebilir.

Talep :

Girilen veri FTR ile başlasın devamında ise en az 1 karakter olsun.

Çözüm :

string Desen = @”FTR.”;

“^” Satırbaşı Parametresi

Satırbaşı
parametresi ile kontrol yapılacak verinin belirtilen karakter ile başlaması koşulu kontrol edilebilir.

Talep 1 :

Girilen verinin ilk karakteri F ile başlasın

Çözüm 1 :

string Desen = @”^F.”;

peki girilen verinin başlangıç karakteri değil de başlangıç kelimesi istenirse? Bu gibi bir talep de ise başlangıç kelimesini parantez içine almamız sorunumuzu çözecektir.

Talep 2 :

Girilen veri 2015 ile başlasın

Çözüm 2 :

string Desen = @”^(2015).”;

“$” Satırsonu Parametresi

Satırsonu
parametresi ile kontrol yapılacak verinin belirtilen karakter ile bitmesi koşulu kontrol edilebilir.

Talep 1 :

Girilen verinin son karakteri F ile bitsin

Çözüm 1 :

string Desen = @”.F$”;

Talep 2 :

Girilen veri 2015 ile bitsin

Çözüm 2 :

string Desen = @”.(2015)$”;

“?” Soru İşareti Parametresi

Soru işareti
parametresi ile kontrol yapılacak veri içeriğinde kullanıldığı alanda kendinden önceki karakterin en az birkere ya da hiç kullanılmaması koşulu kontrol edilebilir.

Talep :

Girilen erk@n verisinde @ karakteri kullanılsın yada o karakterin bulunduğu alana bir şey yazılmasın.

Çözüm :

string Desen = @”erk@?n.”;

Bu kontrol sonucunda

    Erkn veya erk@n verileri koşulun true dönmesini sağlarken erkan false değer döndürür.

“+” Artı İşareti Parametresi

Artı işareti
parametresi ile kontrol yapılacak veri içeriğinde kullanıldığı alanda kendinden önceki karakterin en az birkere ya da daha fazla kullanılması koşulu kontrol edilebilir.

Talep :

Girilen erkan verisinde a karakteri en az bir yada daha fazla kullanılsın

Çözüm :

string Desen = @”erka+n.”;

Bu kontrol sonucunda

    Erkan veya erkaaaaaaaaan verileri koşulun true dönmesini sağlar.

“*” Yıldız Parametresi

Yıldız
parametresi ile kontrol yapılacak veri içeriğinde kullanıldığı alanda kendinden önceki karakterin hiç ya da birden fazla kullanılması koşulu kontrol edilebilir.

Talep :

Girilen erkan verisinde a karakteri hiç ya da bir veya birden çok tekrar edebilsin

Çözüm :

string Desen = @”erka*n.”;

Bu kontrol sonucunda

    Erkn , erkan veya erkaaaaaaan verileri koşulun true dönmesini sağlar.

“\d” Rakam Parametresi

Rakam parametresi ile kontrol yapılacak veri içeriğinde kullanıldığı alanda sadece rakam kullanılması koşulu kontrol edilebilir.

Talep :

Girilen veri sadece sayılardan oluşsun

Çözüm :

string Desen = @”^\d*$”;

“\D” Rakam Değil Parametresi

Rakam değil parametresi ile kontrol yapılacak veri içeriğinde kullanıldığı alanda rakam kullanılmaması koşulu kontrol edilebilir.

Talep :

Girilen veri de rakamsal veri bulunmasın

Çözüm :

string Desen = @”^\D*$”;

“\w” Alfanumerik Parametresi

Alfanumerik parametresi ile kontrol yapılacak veri içeriğinde kullanıldığı alanda sadece karakter ve sayı kullanılması koşulu kontrol edilebilir.

Talep :

Girilen veri alfanumerik mi?

Çözüm :

string Desen = @”^\w*$”;

“\W” Alfanumerik Değil Parametresi

Alfanumerik değil
parametresi ile kontrol yapılacak veri içeriğinde kullanıldığı alanda alfanumerik olmayan karakterlerin kullanılması koşulu kontrol edilebilir.

Talep :

Girilen veri alfanumerik olmasın

Çözüm :

string Desen = @”^\W*$”;

“{ }” Tekrar Sayısı Parametresi

Tekrar sayısı parametresi ile kontrol yapılacak veri içeriğinde kullanıldığı alanda kendinden önceki karakterin belirtilen sayıda tekrar etmesi koşulu kontrol edilebilir.

Talep :

Girilen erkan verisinde a karakteri 5 kez tekrar etsin

Çözüm :

string Desen = @”erka{5}n.”;

Bu kontrol sonucunda

    Erkan veya erkaaan verileri koşulun false dönmesini sağlarken erkaaaaan verisi koşulun true dönmesini sağlar.

“[ ]” Dizi Parametresi

Dizi parametresi ile kontrol yapılacak veri içeriğinde kullanıldığı alanda sadece dizi içeriğindeki belirtilmiş karakterlerin kullanılabilmesi koşulu kontrol edilebilir.

Talep :

Girilen erkan verisinde k karakteri yerine sadece k-c ve ş harfleri kullanılabilsin

Çözüm :

string Desen = @”er[kcş]an.”;

Bu kontrol sonucunda

    Erkan, Ercan veya Erşan verileri koşulun true dönmesini sağlar.

Bu makalemizde incelemiş olduğumuz Regular Expression parametreleri sayesinde birçok ifade dizilimini yapabiliriz. Bu dizilimler bizlere özellikle filtreleme olmak üzere filtreleme ve kontrol amaçlı yazmış olduğumuz kodlamaların daha kısa ve güvenli bir şekilde yazılmasına olanak tanımaktadır.

Bu konuyla ilgili sorularınızı  alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.

Referanslar

www.mshowto.org

Yazı gezinmesi

Mobil sürümden çık