C# Telefon Numarası Kontrolü – REGEX Sınıfı , yazım ile c sharp eğitim setimize devam edelim. Bir süredir işlerimin yoğun olmasından dolayı yazı yazamıyordum. Bu işlerim arasında bu dersin konusu gerek oldu. İşlerim bugün biraz sakinleştiğinden hemen yazımı yazayım dedim. Bu dersimizde kullanıcının textbox’a yazacağı telefon numarasını istediğimiz bir formatta yazmaya zorlamış olacağız. Kullanıcının yazdığı metin bir telefon numarası değil ise bir uyarı vermesini isteyeceğiz. Gelin C# Telefon Numarası Kontrolü – REGEX Sınıfı yazımıza geçelim.
C# Telefon Numarası Kontrolü – REGEX Sınıfı
Regex (Regular Expression) , istediğim verilerin bir düzene uygun olmasını sağlamak için kullanırız. Buna telefon, mail adresi vs tüm bilgiler geçerlidir. Biz bir format belirleriz ve kullanıcı o formatın dışında bir şey yazamaz. Regex en basit anlatımı ile bu şekildedir.
Bu dersimizde birkaç farklı telefon yazım formatını sizlere anlatacağım.
Bu işlem için aşağıdaki namespace’i eklememiz gerekiyor.
using System.Text.RegularExpressions;
Format 1 : 0xxx-xxx-xx-xx (0533-222-11-00)
Öncelikle şöyle bir metod yapalım.
public static bool TelefonFormatKontrol(string Telefon) { string RegexDesen = @"^(0(\d{3})-(\d{3})-(\d{2})-(\d{2}))$"; Match Eslesme = Regex.Match(Telefon, RegexDesen, RegexOptions.IgnoreCase); return Eslesme.Success; // bool değer döner }
Buradan dönen değeri kaydetme işleminden önce kontrol ettirebilirsiniz. Örneğin;
private void btn_kaydet_Click(object sender, EventArgs e) { bool TelefonDogruMu = TelefonFormatKontrol(txt_telefon.Text); if (TelefonDogruMu == true) { // kaydetme işlemlerlerinizi yapabilirsiniz. } else { MessageBox.Show("Telefon numarası hatalıdır. Lütfen kontrol ediniz."); } }
Format 2 : 0xxx xxx xx xx
Yukarıdaki işlemleri aynen tekrar kullanalım. Sadece desenimiz değişecek,
public static bool TelefonFormatKontrol(string Telefon) { string RegexDesen = @"^(0(\d{3}) (\d{3}) (\d{2}) (\d{2}))$"; Match Eslesme = Regex.Match(Telefon, RegexDesen, RegexOptions.IgnoreCase); return Eslesme.Success; // bool değer döner }
Gördüğünüz gibi, bu sefer desenimizi değiştirdik. Geri kalan kısımlar sorunsuz çalışır. Şimdi de başka bir formata göz atalım.
Format 3 : 05xxxxxxxxx
Bu formatımızda da gördüğünüz gibi boşluk yada tre karakteri yok. Hepsi bitişik olacak ve diğerlerinden farklı olarak telefon numarasının “05” ile başlamasını isteyeceğiz.
public static bool TelefonFormatKontrol(string Telefon) { string RegexDesen = @"^(05(\d{9}))$"; Match Eslesme = Regex.Match(Telefon, RegexDesen, RegexOptions.IgnoreCase); return Eslesme.Success; // bool değer döner }
Diğerlerine göre çok daha kısa bir desenimiz var. Desene baktığımızda “05” yazan kısım sabit olacak ve sonrasında da 9 karakter olacak diye diye şart koştuk. Girilen veri bu koşula uyuyorsa true değer döner.
Ben kendi formatımı yazmak istiyorum derseniz ise şu siteye göz atabilirsiniz. Bu sitede kendi regex deseninizi hazırlayabilir yada başka yerlerden bulduğunuz bir deseni kendinize göre uyarlayabilirsiniz.
Başka bir dersimiz de de mail adresi format kontrolünün nasıl olduğuna bakacağız. C# Telefon Numarası Kontrolü – REGEX Sınıf dersimizde bu kadar dostlar,
C Sharp Eğitim Seti ve ERP Programlama eğitimi sayfasına gitmek için tıklayınız. Buraya tıklayarak Github Projeme ulaşabilirsiniz.
Sağlıcakla ve takipte kalın.
Kardeşim link vermişsin basınca yeni sekmede açılmıyor sağ tık yapıp açayım diyorum onu da engellemişsin .
CTRL + Mouse Sol click yaptığında yeni sekmede açabilirsin kardeşim. Ama ona gerek kalmadan linkleri yan sekmede açılacak şekilde yaparım. ^^
Yada Maouse tekerleği ile tıklarsan da yan sekmede açılır.
Teşekkürler, çok yardımcı oldu,
Faydalı olmasına sevindim. Yorumun için teşekkürler.