contains ve replace
- Rust kursu
- Başlangıç
- Ders 103/115
- 4 dk
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('-')); // xUygulama 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
fn main() {
// buraya yaz
}Örnek çözüm
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
let m = "kedi ve kedi";
let y = m.____("kedi", "at"); // "at ve at"
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 |