Müdavim Girişi

E-Posta
Parola

Ücretsiz Kayıt Ol


Online Müdavimler (1 Kişi)

Yazar Hakkında
x
İsmail Kocacan
İsmail Kocacan is experienced on many development platforms and continues to learn technologies. Since the age of 16-17, dealing with software technologies. And continuous learning, teaching, research, continues to develop.
Regular Expressions

 

Bilindiği üzere artık delphi de de Regular Expressions kullanabiliyoruz.Bana da ömrü hayatım boyunca bugün kullanmak nasib oldu  

Edite bilgi girerken ;

İlk iki karakteri ÜP ile başlayıp, devamındaki 7 karakterin sayısal olması, tire(-), T1,T2,T3 gibi şeklinde bir giriş olacaktı.

Yani ;

ÜP1234567-T1  (Doğru)

ÜP1234567-T2  (Doğru)

ÜP1234567-T3  (Doğru)

 

ÜP1234567-T5  (Yanlış)  T1,T2,T3 olabilir

KS1234567-T1  (Yanlış)  KS ile başlayamaz.

KS1H34567-T1 (Yanlış)  1 den sonra H karakteri var.0 ile 9 arasında bir değer olması lazım.

 

Bunun için kullandığım RegEx pattren  [ÜP]{2})([0-9]{7})[-]([T][1-3]{1} budur.

 

uses'e RegularExpressions unitini ekleyin.

procedure TForm1.Button1Click(Sender: TObject);

begin

  try

    if TRegEx.IsMatch(editValue.Text, editPattern.Text) then

      ShowMessage('tamam')

    else

      ShowMessage('olmadı');

  except

 

    on E: Exception do

      ShowMessage(E.Message);

  end;

end;

 

 

Regular Expression kullanarak veri girişlerini kontrol etmek daha kullanışlı gibi geldi bana. Neden derseniz.

ÜP1234567-T1 şeklindeki bir verinin formatını kontrol etmek için.Bir ton takla atmamız gerecekti.Delphi tarafında.

Bir ton ifler,string parçalaması vs.

Kaldıki statik bir yöntem olacaktı.

 

Ama şimdi [ÜP]{2})([0-9]{7})[-]([T][1-3]{1} şeklindeki bir desen ile kontrol etmek daha kolay.Neden ?

Yarın derselerki ÜP ile başlamasın efendim.Benim bir dediğim,diğer dediğimi tutmaz.Bu Başlarken A ile C arasında değer girilsin derseler.

Sadece [A-C]{2})([0-9]{7})[-]([T][1-3]{1} diye deseni değiştirmesi daha teknik olacaktır.Diye düşünüyorum. :D

Hem deseni istersek harici bir dosyadan da okuma çok pis teknik olacaktır.   

 

Ve bu iş hazırlanmış bir web uygulaması : http://gskinner.com/RegExr/

Desen hazırlarken ki karakterlerin anlamları adreste mevcut

 

Delphi XE ile hazırladığım örnek:
İndir

 

Saygılarımla.

İsmail Kocacan(Yazılımcı Bozuntusu)
ismailkocacan@gmail.com


Kategori : Delphi | 21.12.2011 22:51:00  | 74 defa okundu  | 0 Yorum |

Yazara Ait Diğer Makaleler(49) Makaleye Yapılan Yorumlar İlk yorum yazan siz olun
Ara
 
Anket
Hangi VeriTabanı Yönetim Sistemini Kullanıyorsunuz ?