Reguläre Ausdrücke verwenden

Rust:
Reguläre Ausdrücke verwenden

Wie geht das:

Die regex Bibliothek in Rust ist der Anlaufpunkt, um mit regulären Ausdrücken zu arbeiten. Um sie zu nutzen, müssen Sie sie zuerst in Ihre Cargo.toml hinzufügen:

[dependencies]
regex = "1"

Danach können Sie anfangen, Regex-Funktionalitäten in Ihrem Rust-Code zu implementieren. Hier ist, wie man einige gängige Operationen durchführt:

Ein Muster in einer Zeichenkette finden

use regex::Regex;

fn main() {
    let re = Regex::new(r"^\d{4}-\d{2}-\d{2}$").unwrap();
    let datum = "2023-04-15";

    println!("Entspricht der Text dem Datumsformat? {}", re.is_match(datum));
    // Ausgabe: Entspricht der Text dem Datumsformat? true
}

Übereinstimmungen finden und darauf zugreifen

use regex::Regex;

fn main() {
    let text = "Rust 2023, C++ 2022, Python 2021";
    let re = Regex::new(r"\b(\w+)\s(\d{4})").unwrap();

    for cap in re.captures_iter(text) {
        println!("Sprache: {}, Jahr: {}", &cap[1], &cap[2]);
    }
    // Ausgabe:
    // Sprache: Rust, Jahr: 2023
    // Sprache: C++, Jahr: 2022
    // Sprache: Python, Jahr: 2021
}

Text ersetzen

use regex::Regex;

fn main() {
    let re = Regex::new(r"\b(\w+)\s(\d{4})").unwrap();
    let text = "Rust 2023, C++ 2022, Python 2021";
    let replaced = re.replace_all(text, "$1 wurde im Jahr $2 aktualisiert");

    println!("Aktualisierter Text: {}", replaced);
    // Ausgabe: Aktualisierter Text: Rust wurde im Jahr 2023 aktualisiert, C++ wurde im Jahr 2022 aktualisiert, Python wurde im Jahr 2021 aktualisiert
}

Text mit einem Regex teilen

use regex::Regex;

fn main() {
    let re = Regex::new(r"\W+").unwrap(); // teilt bei jedem Nicht-Wort-Zeichen
    let text = "Rust-C++-Python-Go";

    let felder: Vec<&str> = re.split(text).collect();

    for feld in felder {
        println!("Sprache: {}", feld);
    }
    // Ausgabe:
    // Sprache: Rust
    // Sprache: C++
    // Sprache: Python
    // Sprache: Go
}

Diese Beispiele bieten eine grundlegende Anleitung für den Einstieg in die Arbeit mit regulären Ausdrücken in Rust. Sobald Ihre Anforderungen komplexer werden, bietet die regex-Crate eine Fülle von Funktionen für komplexe Mustervergleiche und Textmanipulationsaufgaben.