Rust:
Suppression de caractères correspondant à un motif
How to:
Utilisons regex
pour matcher et supprimer des patterns spécifiques.
extern crate regex;
use regex::Regex;
fn main() {
let text = "Les dates: 2023-03-17, 2023-04-01";
let date_re = Regex::new(r"\d{4}-\d{2}-\d{2}").unwrap();
let result = date_re.replace_all(text, "");
println!("Texte après suppression: '{}'", result);
}
Output:
Texte après suppression: 'Les dates: , '
Deep Dive
Historiquement, les expressions régulières viennent de la théorie des automates et des langages formels. En Rust, pour manipuler des regex, on utilise souvent la crate regex
, qui est performante et bien intégrée.
Dans nos alternatives, on a str::replace
, pratique pour des cas simples, ou en utilisant Vec<char>
pour de l’itération plus contrôlée. Les détails d’implémentation chez regex
incluent des compilations de patterns en automates finis pour une recherche efficace.
See Also
- Rust documentation on Strings: Pour une meilleure compréhension des strings en Rust.
- Automata Theory: Pour comprendre les bases théoriques derrière les regex.