blob: 0d348c493b4b09f9be3be4fba1ae94a4681907a7 [file] [log] [blame] [edit]
use onig::*;
fn scan_callback<'t>(n: i32, caps: Captures<'t>) -> bool {
println!("scan: {}", n);
println!("match at {}", caps.offset());
for (i, cap) in caps.iter_pos().enumerate() {
match cap {
Some(pos) => println!("{}: {:?}", i, pos),
None => println!("{}: did not capture", i),
}
}
true
}
fn exec(pattern: &str, to_match: &str) {
let reg = Regex::new(pattern).unwrap();
reg.scan(to_match, scan_callback);
}
fn main() {
exec("\\Ga+\\s*", "a aa aaa baaa");
exec("a+\\s*", "a aa aaa baaa");
}