Menu
Coddy logo textTech

String Metotları

Coddy'nin Rust Journey'sinin Fundamentals bölümünün bir parçası — ders 69 / 75.

Rust, dizeler üzerinde çeşitli işlemler gerçekleştirmenize olanak tanıyan zengin bir yerleşik dize yöntemleri kümesine sahiptir. Bu yöntemler; dizeleri işlemek, aramak ve dönüştürmek için işlevler sağlar. İşte yaygın olarak kullanılan bazı dize yöntemleri:

  • len(): Dizedeki karakter sayısını döndürür.
  • chars().nth(index): Belirtilen indeksteki (0 tabanlı) karakteri döndürür. Bu metot bir Option<char> — ya Some bir değer (eğer indeks mevcutsa) ya da None (mevcut değilse) temsil eden özel bir Rust türü döndürür. Üzerinde .unwrap() çağırmak, karakter değerini doğrudan çıkarır.
  • contains(substring): Dizenin belirtilen alt dizeyi içerip içermediğini kontrol eder.
  • starts_with(prefix): Dizenin belirtilen önekle başlayıp başlamadığını kontrol eder.
  • ends_with(suffix): Dizenin belirtilen sonekle bitip bitmediğini kontrol eder.
  • to_uppercase(): Dizeyi büyük harfe dönüştürür.
  • to_lowercase(): Dizeyi küçük harfe dönüştürür.
  • trim(): Dizenin başındaki ve sonundaki boşlukları kaldırır.

Örneğin:

let message = "Hello, World!";
let length = message.len();
let firstChar = message.chars().nth(0).unwrap();
let contains_world = message.contains("World");
let starts_with_hello = message.starts_with("Hello");
let lower = message.to_lowercase();
challenge icon

Görev

Kolay

Girdi olarak bir dize alan ve dize metotlarını kullanarak aşağıdaki analizi yazdıran analyzeString adında bir metot oluşturun:

  1. Dizenin uzunluğu
  2. 4. indeksteki karakter
  3. Dizenin "Rust" alt dizesini içerip içermediği
  4. Dizenin bir nokta . ile bitip bitmediği
  5. Dizenin büyük harfe dönüştürülmüş hali

Çıktı tam olarak şu formatta olmalıdır:

Length: [The length]
Char at 4: [The Char at index 4]
Contains Rust: [true or false]
Ends with dot: [true or false]
Uppercase: [The string in uppercase]

Not: Giriş dizesinin tüm işlemler için yeterince uzun olacağını varsayın.

Kopya kağıdı

Rust yerleşik dize (string) metotları:

  • len(): Karakter sayısını döndürür
  • chars().nth(index).unwrap(): Belirtilen dizindeki karakteri döndürür (0 tabanlı)
  • contains(substring): Dizinin belirtilen alt diziyi içerip içermediğini kontrol eder
  • starts_with(prefix): Dizinin belirtilen önek ile başlayıp başlamadığını kontrol eder
  • ends_with(suffix): Dizinin belirtilen sonek ile bitip bitmediğini kontrol eder
  • to_uppercase(): Diziyi büyük harfe dönüştürür
  • to_lowercase(): Diziyi küçük harfe dönüştürür
  • trim(): Baştaki ve sondaki boşlukları kaldırır
let message = "Hello, World!";
let length = message.len();
let firstChar = message.chars().nth(0).unwrap();
let contains_world = message.contains("World");
let starts_with_hello = message.starts_with("Hello");
let lower = message.to_lowercase();

Kendin dene

use std::io;

fn analyze_string(s: &str) {
    // Kodunuzu buraya yazın
}

fn main() {
    let mut message = String::new();
    io::stdin().read_line(&mut message).unwrap();
    let message = message.trim();
    analyze_string(message);
}
quiz iconKendini test et

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

Fundamentals bölümündeki tüm dersler