use regex::Regex;
fn extract_bracketed_content(text: &str) -> Vec<String> {
let pattern = Regex::new(r"\[(.*?)\]").unwrap();
pattern
.captures_iter(text)
.filter_map(|cap| cap.get(1).map(|m| m.as_str().to_string()))
.collect()
}
fn main() {
let input = "This is a [sample] string with [multiple] square brackets.";
let extracted = extract_bracketed_content(input);
for item in extracted {
println!("{}", item);
}
}
/*
run:
sample
multiple
*/