Menu
Coddy logo textTech

Stringlerde Arama

Coddy'nin Swift Journey'sinin Mantık ve Akış bölümünün bir parçası — ders 3 / 56.

Bir alt dizginin başka bir dizgi içinde olup olmadığını kontrol etmek için üç hızlı yöntem:

let email = "alice@coddy.tech"
print(email.contains("@"))         // doğru
print(email.hasPrefix("alice"))    // doğru
print(email.hasSuffix(".tech"))    // doğru

contains herhangi bir alt dizeyi alırken, hasPrefix ve hasSuffix yalnızca başlangıca veya sona bakar. Bunların hepsi büyük/küçük harfe duyarlıdır, bu yüzden eğer bu önemliyse önce dizeyi küçük harfe çevirin.

Hızlı bir "eksik" testi için bunları ! ile birleştirin:

if !email.contains("@") {
    print("not a valid email")
}
challenge icon

Görev

Kolay

Tek bir giriş satırı okuyun. Aşağıdakilerin tamamını kontrol ederek bunu basit bir e-posta olarak doğrulayın:

  • Tam olarak bir tane @ içeriyor (karakterler üzerinde filter + count kullanın)
  • @ ile başlamıyor veya bitmiyor
  • .tech, .com veya .org ile bitiyor (büyük/küçük harf duyarsız)

Tüm kontroller geçtiğinde valid, aksi takdirde invalid yazdırın. Girişin küçük harfe dönüştürülmüş versiyonuyla karşılaştırma yapın.

alice@CODDY.TECH girişi için çıktı valid olur.

Kopya kağıdı

Bir dizginin bir alt dize içerip içermediğini veya bir alt dizeyle başlayıp bitmediğini kontrol edin:

let email = "alice@coddy.tech"
email.contains("@")        // true – dizginin herhangi bir yerinde
email.hasPrefix("alice")   // true – başlangıçta
email.hasSuffix(".tech")   // true – sonda

Her üçü de büyük/küçük harfe duyarlıdır. Gerekirse önce .lowercased() kullanın:

email.lowercased().hasSuffix(".tech")

Yokluğu test etmek için ! kullanın:

if !email.contains("@") { print("not a valid email") }

Kendin dene

let line = readLine()!

// YAPILACAK: tam olarak bir tane '@' olduğunu, kenarlarda olmadığını ve son ekin [.tech .com .org] içinde olduğunu doğrula
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Mantık ve Akış bölümündeki tüm dersler