Regular Expression Nedir?
Program hazırlarken çok geniş yelpazede kullanım kolaylıkları sunan regular expressionlar genelde bir verinin girilmesini belirli kriterlere göre zorlamak içinde kulanılır. Örneğin telefon numarası, eposta gibi. Bu tip verilerin bir standartı vardır. Eğer kullanıcıyı bu tip verileri girerken standarta yönelik zorlamaz istiyorsak regex kullanmak kolay bir çözüm olacaktır.
Regex'te sözdizimi oluşturmak için kullanabileceğimiz birkaç yöntem vardır:
1. Karakter Uyuşması: Belirlediğimz karakterlerin string içinde aramamıza
yarar.
Örnek: dogma
2. Tekrarlanma Uyuşması: Regular Expression'ın derinleme araştırma yaparak
gücünü gösterdiği bölümdür.
Örneğin dogm ve dogma çıktısını istiyoruz. Bunun için başka bir özel karakter kullanmalıyız:
"Soru İşareti" -> dogma?
3. Pozisyon Uyuşması: Aranılan ifadenin string içindeki yerini de belirlememizi
sağlar. İfadenin, string içinde en başta olmasını istiyorsak başına ^ koymamız gerekir.
Örnek: ^dogma Burada, string dogma ile başlıyorsa sonuç başarılıdır.
Özel Karakterler
1.) "." Karakteri: Tek bir karakteri temsil eder(yeni satır karakteri hariç). “Lok.edir” şeklindeki bir desen Loknan, LokNan, LokSan, Lok3an gibi stringleri döndürebilir.
2.) "[]" Karakterleri: Bir arrayi yada aralığı temsil eder. “Lok[SNY]an” deseni, LokSan, LokNan ve LokYan stringlerini döndürür. “Lok[a-z]an” şeklindeki kullanım aralık belirtmeye yarar. “Lok[0-9]an” şeklindeki kullanım ise sayısal aralık belirtmeye yarar.
3.) "?" Karakteri: Kendinden önceki karakterin stringte olması yada olmamasını sağlar. “Lokm?an” deseni Lokan yada Lokman döndürür.
4.) "\" Karakteri: Kendinden sonraki özel karakterin stringe dahil edilmesini sağlar. “Loknan\?” deseni Loknan? Stringini döndürür. (Eğer “\” karakterini kullanmamış olsaydık Loknedi yada Loknan dönerdi.)
5.) "*" Karakteri: Kendinden önceki karakterin yada stringin hiç olmaması yada istediği sayıda olmasını sağlar. “Lokman*” deseni, Lokmanedi, Lokman, Lokmanr, Loknanrr, ... döndürür. “Lok(man)*” deseni ise Lok, Lokman, Lokmanman, ... döndürür.
6.) "{}" Karakterleri: Kendinden önce gelen karakterin belirtilen sayıda tekrar etmesini sağlar. “L{4}okman” deseni, LLLLokman stringini döndürür.
7.) "^" Karakteri: Satır başını ifade eder. “^Lokman” deseni, satır başında “Lokman” stringi varsa bunu döndürür.
8.) "$" Karakteri: Satır sonunu ifade eder. “Loknan$” deseni, satır sonunda “Loknan” stringi varsa bunu döndürür.
Yararlanılan Kaynaklar: mydesign.gen.tr - csharpnedir.com
Yorumlar
Yorum Gönder