Säännöllisten lausekkeiden käyttö

Rust:
Säännöllisten lausekkeiden käyttö

Kuinka:

Rustin regex kirjasto on se mihin turvaudutaan työskenneltäessä säännöllisten lausekkeiden kanssa. Käyttääksesi sitä, sinun tulee ensin lisätä se Cargo.toml-tiedostoosi:

[dependencies]
regex = "1"

Sen jälkeen voit aloittaa regex-toiminnallisuuksien toteuttamisen Ruostekoodissasi. Tässä on kuinka suorittaa joitakin yleisiä toimintoja:

Mallin Vastaavuuden Tarkistaminen Merkkijonossa

use regex::Regex;

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

    println!("Vastaako teksti päivämäärän mallia? {}", re.is_match(date));
    // Tuloste: Vastaako teksti päivämäärän mallia? true
}

Osumien Etsiminen ja Saavuttaminen

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!("Kieli: {}, Vuosi: {}", &cap[1], &cap[2]);
    }
    // Tuloste:
    // Kieli: Rust, Vuosi: 2023
    // Kieli: C++, Vuosi: 2022
    // Kieli: Python, Vuosi: 2021
}

Tekstin Korvaaminen

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 päivitettiin $2");

    println!("Päivitetty teksti: {}", replaced);
    // Tuloste: Päivitetty teksti: Rust päivitettiin 2023, C++ päivitettiin 2022, Python päivitettiin 2021
}

Tekstin Jakaminen Regexin Avulla

use regex::Regex;

fn main() {
    let re = Regex::new(r"\W+").unwrap(); // jaetaan kaikilla muilla kuin sanamerkeillä
    let text = "Rust-C++-Python-Go";

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

    for field in fields {
        println!("Kieli: {}", field);
    }
    // Tuloste:
    // Kieli: Rust
    // Kieli: C++
    // Kieli: Python
    // Kieli: Go
}

Nämä esimerkit tarjoavat perusoppaan aloittamiseen säännöllisten lausekkeiden kanssa Rustissa. Kun tarpeesi muuttuvat monimutkaisemmiksi, regex paketti tarjoaa runsaasti toiminnallisuutta monimutkaisia kuviohakutehtäviä ja tekstimanipulointia varten.