CodeBlanks Logo Icon CodeBlanks

contains ve replace

contains ile arama, replace ile değiştirme yaparsın.

contains ve replace

Metin içinde arama ve değiştirme yöntemleri:

let m = "kedi ve kedi yavrusu";
m.contains("ve")            // true
m.starts_with("kedi")       // true
m.ends_with("su")           // true
m.find("yavru")             // Some(13): bayt konumu
m.replace("kedi", "köpek")  // yeni String
m.replacen("kedi", "at", 1) // yalnızca ilki: "at ve kedi yavrusu"

replace yeni bir String döndürür; orijinal metin değişmez.

Karakter ve kapanış kalıpları

Bu yöntemler yalnızca metin değil, karakter ya da kapanış (closure) da kabul eder:

let s = "a1b2c3";
println!("{}", s.contains(char::is_numeric));       // true
println!("{:?}", s.find(|c: char| c.is_ascii_digit()));   // Some(1)
println!("{}", s.replace(|c: char| c.is_numeric(), "")); // abc
println!("{}", "--x--".trim_matches('-'));          // x

Uygulama Ara ve değiştir

let metin = "kedi ve kedi yavrusu"; için contains("ve"), find("yavru") ({:?}) ve replace("kedi", "köpek") sonuçlarını tek satırda boşlukla yazdır.

Başlangıç kodu

main.rs
fn main() {
    // buraya yaz
}

Örnek çözüm

main.rs
fn main() {
    let metin = "kedi ve kedi yavrusu";
    println!("{} {:?} {}", metin.contains("ve"), metin.find("yavru"), metin.replace("kedi", "köpek"));
}

Beklenen çıktı

true Some(13) köpek ve köpek yavrusu

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 <code>"Rust".contains("rust")</code> nedir?

  • Derleme hatası
  • false Doğru cevap
  • true
  • Some(0)

Açıklama: Arama büyük/küçük harfe duyarlıdır. Duyarsız arama için iki tarafı to_lowercase() ile çevir.

2 Hepsini değiştir

Soru
let m = "kedi ve kedi";
let y = m.____("kedi", "at");   // "at ve at"
Cevap
let m = "kedi ve kedi";
let y = m.replace("kedi", "at");   // "at ve at"

Açıklama: replace tüm eşleşmeleri değiştirir; replacen yalnızca ilk n tanesini.

3 "kedi ve kedi" üzerinde ifade ve sonucu

Kavram Anlamı
contains("ve") true
find("ve") Some(5)
replacen("kedi", "at", 1) "at ve kedi"
starts_with("ve") false

Başlangıç bölümündeki tüm dersler

16 Proje: Yapılacaklar listesi

  1. Görev modeli
  2. Ekleme
  3. Listeleme
  4. İşaretleme
  5. Komut okuma