String Metotları
Coddy'nin Rust Journey'sinin Temeller bölümünün bir parçası. Ders 69 / 75.
Rust, dizeler üzerinde çeşitli işlemler yapmanı sağlayan zengin bir yerleşik dize yöntemi kümesine sahiptir. Bu yöntemler, dizeleri değiştirme, arama ve dönüştürme işlevleri sunar. Sık kullanılan bazı dize yöntemleri şunlardır:
len(): Dizedeki bayt sayısını döndürür (ASCII metin için karakter sayısına eşittir).chars().nth(index): Belirtilen dizindeki karakteri döndürür (0 tabanlı). Bu yöntem birOption<char>döndürür: dizin varsa Some değerini, yoksa None değerini temsil eden özel bir Rust türü. Üzerinde.unwrap()çağırmak karakter değerini doğrudan alır.
contains(substring): Dizgenin belirtilen alt dizgeyi içerip içermediğini denetler.starts_with(prefix): Dizgenin belirtilen önekle başlayıp başlamadığını denetler.ends_with(suffix): Dizgenin belirtilen sonekle bitip bitmediğini denetler.
to_uppercase(): Dizeyi büyük harfe dönüştürür.to_lowercase(): Dizeyi küçük harfe dönüştürür.trim(): Dizedeki baştaki ve sondaki 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();Görev
KolayGirdi olarak bir string alan ve string metotlarını kullanarak aşağıdaki analizi yazdıran analyzeString adlı bir metot oluştur:
- String'in uzunluğu
- 4. indeksteki karakter
- String'in "Rust" alt dizgesini içerip içermediği
- String'in noktayla bitip bitmediği
. - Büyük harfe dönüştürülmüş string
Çıktı tam olarak şu biçimde 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: Girdi string'inin tüm işlemler için yeterince uzun olduğunu varsay.
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);
}Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller bölümündeki tüm dersler
4Operatörler Bölüm 1
Aritmetik OperatörlerModül OperatörüAritmetik KısayollarKarşılaştırma OperatörleriString Karşılaştırma7Temel Girdi-Çıktı
Konsola YazdırmaKullanıcı Girdisi OkumaÖzet - 120'ye KadarÖzet - Doğru veya Yanlış5Operatörler Bölüm 2
Mantıksal Operatörler Bölüm 1Mantıksal Operatörler Bölüm 2Özet - Basit MantıkMantıksal Operatörler Bölüm 311Fonksiyonlar
Fonksiyon TanımlamaParametreler ve ArgümanlarDönüş DeğerleriBirden Fazla Dönüş DeğeriÖzet - Sigma FonksiyonuÖzet - Doğrulama Fonksiyonu14Diziler Üzerinde Gezinme
Range RehberiGelişmiş For DöngüsüDöngü İçinde Ödünç AlmaYaygın Dizi İşlemleri3Değişkenler Bölüm 2
Tür Bildirimiİsimlendirme KurallarıTür ÇıkarımıÖzet - Değişkenleri BaşlatmaTür Dönüştürme9Döngüler
Seriler Üzerinde ForWhile DöngüsüBreakContinueİç İçe DöngülerDöngü EtiketleriSonsuz DöngüÖzet - Dinamik GirdiKendi başına pratik yap: Online Rust derleyicisi