1use onig::*;
2
3fn scan_callback<'t>(n: i32, caps: Captures<'t>) -> bool {
4 println!("scan: {}", n);
5 println!("match at {}", caps.offset());
6
7 for (i, cap) in caps.iter_pos().enumerate() {
8 match cap {
9 Some(pos) => println!("{}: {:?}", i, pos),
10 None => println!("{}: did not capture", i),
11 }
12 }
13
14 true
15}
16
17fn exec(pattern: &str, to_match: &str) {
18 let reg = Regex::new(pattern).unwrap();
19 reg.scan(to_match, scan_callback);
20}
21
22fn main() {
23 exec("\\Ga+\\s*", "a aa aaa baaa");
24 exec("a+\\s*", "a aa aaa baaa");
25}