C# String Methodları

Katılım
20 Ocak 2024
Mesajlar
51
Reaksiyon skoru
5
atıyorum kullanıcı [email protected] diye bir e posta giriyor bu e postanın sonunda @hotmail.com veya @outlook.com.tr de gelebilir bu en sondaki e posta uzantısını kesip e posta adının karakter uzunluğuna bakmak istiyorum if ile yardımcı olur musunuz
 
sorunu çözdüm ilerde bir gün ihtiyacı olabilecek kişiler için kodu bırakıyorum

if (e_posta.EndsWith("@gmail.com"))
{
if (e_posta.Length < 14) {
lbUyari.Text = "E-Posta adınız en az 4 hane olmalı";
return;
}
}

@gmail.com uzunluğu 10 olduğu için e postanın tamamını başındada en az 4 karakterli bir isim girmesini istediğim için

if (e_posta.Length < 14) şeklinde yaptım ama siz e postanın başındaki ismin 8 karakterli olmasını isterseniz 14 yerine 18 de yazabilirsiniz

umarım anlatabilmişimdir
 
İleride mutlaka lazım olur. Bir kenara not edeyim.
Böyle kendi sorunlarını kendi çözenleri de severim. Bizi ugraştırmadığın işin sağol.
 
sorunu çözdüm ilerde bir gün ihtiyacı olabilecek kişiler için kodu bırakıyorum

if (e_posta.EndsWith("@gmail.com"))
{
if (e_posta.Length < 14) {
lbUyari.Text = "E-Posta adınız en az 4 hane olmalı";
return;
}
}

@gmail.com uzunluğu 10 olduğu için e postanın tamamını başındada en az 4 karakterli bir isim girmesini istediğim için

if (e_posta.Length < 14) şeklinde yaptım ama siz e postanın başındaki ismin 8 karakterli olmasını isterseniz 14 yerine 18 de yazabilirsiniz

umarım anlatabilmişimdir
Daha iyi çözüm var. Şuan her e-posta servisi için ayrı ayrı if girdisi hazırlaman gerekiyor. Onun yerine, string'in içerisindeki @ işaretine kadar olan kısmın uzunluğunu kontrol et.

Basit bir döngüyle;
C#:
private int eposta_uzunlugu(string eposta) {
    for(int i = 0; i < eposta.Length; i++) {
        if (eposta[i] == '@') {
            return i;
        }
    }
    throw new ArgumentException("Geçersiz e-posta.");
}

Sonrasında bunu şu şekilde kontrol edebilirsin;
C#:
if (eposta_uzunlugu(e_posta) < 4) {
    lbUyari.Text = "E-Posta adınız en az 4 hane olmalı";
    return;
}
 
Frontend tarafında hazır enum olarak kullanabilirsin @ sonrasını kullanabilirsin. Textbox dan logic yapabilirsin. Backend taraflı çözüm arkadaşın dediği gibi yapmak daha iyi olur.
 
Yeni mesajlar Yeni Konu Aç  

   

SON KONULAR

Forum istatistikleri

Konular
1,175,897
Mesajlar
10,599,906
Üyeler
186,688
Son üye
psych
Geri
Top