Regex 02 - Regex101.com

Regex 02 - Regex101.com

Önceki bölüm:

Regex 01 - Regex Nedir?
Regular Expressions, “düzenli ifadeler” anlamına gelen bir terimdir. Bilgisayar biliminde ve programlamada örüntü eşleme ve metin işleme için kullanılan güçlü bir araçtır.

Regex öğrenirken bolca kullanacağımız bir site var: www.regex101.com. Bu sitenin bize ne gibi araçlar sağladığına gelin birlikte bakalım.

Bizi ilk başta düzenli ifademizi yazdığımız regex kutusu karşılıyor:

Onun hemen altında ise yazdığımız örüntünün içerisinde bir eşleşme bulmaya çalışacağı metni yazdığımız metin kutusu yer alıyor:

Bu iki girdi alanı en çok kullanacağımız bölmeler olacak.

Regex örüntüsünü yazdığımız kutunun hemen yanında niteleyicilerimizi (modifiers) seçebileceğimiz bir başka alan var:

Niteleyiciler konusuna sonraki bölümlerde detaylı olarak değineceğiz.

Sol üst tarafta yazdığınız regexi kaydedip paylaşabilmenizi sağlayan bir buton var.

Hemen bu butonun altında ise Flavor kısmı bulunuyor.

Flavor aslında farklı regex motorlarına işaret eden bir terim. Yani flavor kelimesini duyduğunuzda aklınıza farklı özelliklere ve farklı meta karakterlere sahip olabilen regex motorları gelmeli. İleride genişçe işleyeceğiz.

Onun altında ise regex testinin hangi fonksiyonaliteye sahip olduğunu seçtiğimiz kısım var.

Bizi burada 4 seçenek karşılıyor.

Match: En çok kullanacağımız fonksiyonalite. Yazdığımız örüntüye uygun eşleşme bulmamızı sağlıyor.

Substitution: Eşleşen metinlerin yerine başka değerler yazmamızı sağlıyor. Bunu bul ve değiştir olarak düşünebilirsiniz.

List: Bulunan eşleşmeleri listeleyebilmemizi sağlıyor.

Unit Tests: Yazdığımız regexin doğru çalışıp çalışmadığını test edebileceğimiz birim testleri yazmamızı sağlıyor. Gereksinimlerimizi kapsamlı olarak biliyorsak, burayı kullanarak regexinizin doğruluğundan emin olabiliriz.

Buranın altında ise Tools kısmı bizi karşılıyor.

3 adet aracımız var.

Code Generator: Düzenli ifadeniz, test metniniz ve fonksiyonalitenizi temel alarak istediğiniz yazılım dilinde size basit kod üretimi yapıyor. Bunları doğrudan bilgisayarınızda yüklü olan yazılım dillerinde çalıştırabilirsiniz.

Regex Debugger: Regex motorunun girdiğiniz örüntüye uygun eşleşme ararken adım adım nasıl çalıştığını bize gösteriyor. Harika bir araç. Bunu ilerleyen kısımlarda kullanacağız.

Export Matches: Bulduğunuz eşleşmeleri dışarı aktarmanızı sağlıyor. Bu eşleşmeleri JSON (JavaScript Object Notation), CSV (Comma Seperated Values) ya da düz metin olarak indirme imkânı sağlıyor.

Sağ üst tarafta yazdığınız regexin bir açıklamasını gördüğünüz bölüm var:

Burada hangi meta karakterlerin ne anlama geldiğini ve nasıl bir arama yapıldığını özet bir şekilde görüp regexi doğru yazıp yazmadığınızın sağlamasını yapabilirsiniz.

Hemen altındaki Match Information kısmı da bize metin içerisinde bulunan eşleşmeleri gösteriyor.

İlk bulunan eşleşme ilk gösteriliyor. Ayrıca kaçıncı sıradaki karakterler arasında olduğunu da aralık olarak veriyor. (Bkz: 71-82) Match ve Group arasındaki farka ise ilerleyen bölümlerde değineceğim.

Son olarak en altta Quick Reference kısmı yer alıyor.

Burası kullandığımız regex flavor'ının sahip olduğu tüm meta karakterleri hızlı bir şekilde görebileceğimiz bir sözlük. Burayı da bir şeyler yazarken sık sık kullanacağız.


Regex101'i genel hatlarıyla anlatmaya çalıştım. Bir sonraki bölümde bu websitesinin nasıl çalıştığını uygulamalı olarak göreceğiz. O zamana kadar dilerseniz siz de biraz kurcalayabilirsiniz.

Sıradaki Bölüm:

Regex 03 - Gerçek Karakterler
Regex için iki temel karakter tipi var. Gerçek karakterler A’dan Z’ye bütün harfler, 0’dan 9’a bütün rakamlar, virgül ve alt çizgiden oluşuyor.