Zamiana liter na wielkie w łańcuchu znaków

Rust:
Zamiana liter na wielkie w łańcuchu znaków

Jak to zrobić:

Aby zamienić pierwszą literę ciągu na wielką w Rust, masz dwie główne drogi: używanie funkcji biblioteki standardowej lub korzystanie z zewnętrznych crate’ów dla bardziej złożonych lub specyficznych potrzeb. Oto jak możesz to zrobić oboma sposobami.

Korzystanie z biblioteki standardowej Rust

Biblioteka standardowa Rust nie oferuje bezpośredniej metody na zamianę ciągów na ciągi z pierwszą wielką literą, ale możesz tego dokonać, manipulując znakami ciągu.

fn capitalize_first(s: &str) -> String {
    let mut c = s.chars();
    match c.next() {
        None => String::new(),
        Some(f) => f.to_uppercase().collect::<String>() + c.as_str(),
    }
}

fn main() {
    let my_string = "hello";
    println!("{}", capitalize_first(my_string)); // Wyjście: Hello
}

Korzystając z crate’a heck

Dla bardziej bezpośredniego podejścia, szczególnie gdy pracujesz w szerszym kontekście przetwarzania tekstu, możesz preferować korzystanie z zewnętrznych bibliotek, takich jak heck. Crate heck oferuje różne funkcjonalności konwersji przypadków, w tym prosty sposób na zmianę ciągów na ciągi z pierwszą wielką literą.

Najpierw dodaj heck do swojego Cargo.toml:

[dependencies]
heck = "0.4.0"

Następnie użyj go, żeby zamienić pierwszą literę na wielką:

extern crate heck; // Nie jest potrzebne w edycji Rust 2018 lub późniejszej
use heck::TitleCase;

fn main() {
    let my_string = "hello world";
    let capitalized = my_string.to_title_case();
    println!("{}", capitalized); // Wyjście: Hello World
}

Uwaga: Metoda to_title_case zapewniona przez heck zmienia pierwsze litery wszystkich słów w ciągu na wielkie, co może być więcej niż oczekujesz, jeśli chcesz zmienić tylko pierwszy znak ciągu. Dostosuj jej użycie zgodnie ze swoimi specyficznymi potrzebami.