Regular Expression Nedir?

regular expression regex
Regular Expression, veriler içinde, istediğinize göre belirleyebileceğimiz kompleks sözdizimine sahip ifadeleri bulmak için kullanılan bir tekniktir. Bu teknik bir string içinde başka bir string bulmamıza ve istersek değiştirmemize yarar.
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.

Regular Expression’larda Kullanılan Özel Karakterler ve Etkileri Regular expression desenleri tanımlamada kullanılan özel karakterleri örnekleri ile anlatırsak sanırım regular expressionlar daha tanıdı ve kolay gelebilir.

Ö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
Anahtar Kelimeler: Regular Expression,regex, düzenli ifadeler, regular expression nedir, what is regex

Yorumlar

Bu blogdaki popüler yayınlar

ORA-06502: PL/SQL: sayısal veya değer hatası: karakter dizesi arabelleği çok küçük hatası ve çözümü

Sık Kullanılan Regular Expression'lar

Açılış Sayfalarını web.config Üzerinden Ayarlama