Kurallı İfade Tanıyıcı

Kurallı ifade tanıyıcı adından da anlaşılacağı gibi, bizim belirlediğimiz bir kurala göre hareket eder. Metinlerde bir biçimsel dil kullanarak tarif edilen kısımları seçip ayırmamıza yarar. Ne sonuç getireceğini biz belirleriz. Genel olarak bu kullanım “Regex” olarak geçer ve genel bir kullanımdır.

Hakkında bilgi almak ve hazırladığınız regex’leri test etmek için .NET Regex Tester sitesini kullanabilirsiniz.

Geodi kelimeleri büyük harfe çevirip kullandığı için hazırladığınız regex’lerde büyük harf kullanmaya dikkat etmelisiniz. Örnek kullanımlar aşağıdaki gibidir.

[0-9,\,]+X[0-9,\,]+X[0-9,\,]*[ ]*CM|[0-9,\,]+X[0-9,\,]+[ ]*CM

* Yukarıdaki örnekte dokümanlarda geçen boyut ifadelerini bulabilirsiniz. Örneğin "25X25cm" veya "5x10x12,5 cm" gibi ifadeleri bulmanıza yarayan bir kurallı ifade.
[0-9]+[ ]*SAYFA|[0-9]+[ ]*ADET

* Bu örnekte ise dokümanlarda geçen sayfa ve adet sayılarını bulabilirsiniz. Örneğin "10 Sayfa, 20 Adet".
MIL-STD-[0-9]*[A-Z]*

* Dünya genelinde askeri standartları belirtirken kullanılan bir terim. Bu regex ile yakalayabileceğiniz örnekler: "MIL-STD-1376" "MIL-STD-1246C" gibi.
(HTTPS?://)?(WWW[.])?([Iİ]NSTAGRAM[.]COM)(([/?#][^\s]*)|\s+)

* Instagram adreslerini tanır. Farklı yazım şekillerini destekler. https://www.instagram.com/deceyazilim/	www.instagram.com/deceyazilim/	instagram.com/deceyazilim/ gibi.
\b[A-Z]{2}[0-9]{2}(?:[ ]?[0-9]{4}){4,5}(?!(?:[ ]?[0-9]){3})(?:[ ]?[0-9]{1,2})?\b

* Iban numaralarını tanır. Dünya genelinde kullanılan boşluksuz hali ve bizim ülkemizde kullanılan boşluk ile gösterilen hallerini de tanır.
(0[1-9]|[1-7][0-9]|8[01])\s?((([A-Z])\s?(\d{4,5}))|(([A-Z]{2})\s?(\d{3,4}))|(([A-Z]{3})\s?(\d{2,3}))) 

* Türkiye Cumhuriyeti plaka standartlarına uyan plakaları tanır.
Aşağıda bazı kart türlerinin kurallı ifadelerini bulabilirsiniz. Rastgele gibi görünse de hepsinin bir standardı vardır.

* Mastercard : (?:(5[1-5][0-9]{2})|(222[1-9])|(22[3-9][0-9])|(2[3-6][0-9]{2})|(27[01][0-9])|(2720))[0-9]{12}

* Visa : 4[0-9]{12}(?:[0-9]{3})

* American Express : 3[47][0-9]{13}

* JCB : (?:2131|1800|35\d{3})\d{11}

Sonuçları daha iyi irdelemek için Kelimeler sayfasını kullanabilirsiniz.

Hazırladığınız regex ifadesinin başında ve sonunda boşluk olmamasına dikkat etmelisiniz.

Bu tanıyıcıyı kullanabilmeniz için Geodi Pro lisansına ve modülüne sahip olmanız gerekmektedir.