// include the latest version of the regex crate in your Cargo.toml
extern crate regex;
use regex::Regex;
fn main() {
let regex = Regex::new(r"[0-9]*\.[0-9]+\.[0-9]+\.[0-9]").unwrap();
let string = "
Interface IP-Address OK? Method Status Protocol
TenGigabitEthernet1/1 unassigned YES NVRAM up up
Te1/1.200 216.254.132.249 YES NVRAM up up
Te1/1.201 10.201.120.173 YES NVRAM up up
TenGigabitEthernet1/2 10.201.121.46 YES NVRAM up up
TenGigabitEthernet1/3 unassigned YES NVRAM up up
Te1/3.905 198.32.160.89 YES NVRAM up up
Te1/3.908 206.130.10.3 YES NVRAM up up
TenGigabitEthernet1/4 unassigned YES NVRAM administratively down down
TenGigabitEthernet1/5 unassigned YES NVRAM up up
Te1/5.98 216.254.131.1 YES NVRAM up up
Te1/5.100 216.254.130.129 YES NVRAM administratively down down
Te1/5.106 216.254.130.158 YES NVRAM administratively down down
Te1/5.110 216.254.131.149 YES NVRAM up up
Te1/5.111 216.254.131.117 YES NVRAM up up
Te1/5.132 216.254.130.25 YES NVRAM administratively down down
Te1/5.134 216.254.130.29 YES NVRAM up up
Te1/5.205 216.254.141.153 YES NVRAM up up
TenGigabitEthernet1/6 unassigned YES NVRAM up down
TenGigabitEthernet1/7 unassigned YES NVRAM up up
Te1/7.907 198.32.118.14 YES NVRAM up up
TenGigabitEthernet1/8 10.201.121.154 YES NVRAM up up
GigabitEthernet2/1 unassigned YES unset up up
GigabitEthernet2/2 unassigned YES unset administratively down down
GigabitEthernet2/3 unassigned YES unset administratively down down
GigabitEthernet2/4 unassigned YES unset up up
GigabitEthernet2/5 unassigned YES unset administratively down down
";
// result will be a tuple containing the start and end indices for the first match in the string
let result = regex.captures(string);
let (start, end) = match result {
Some((s, e)) => (s, e),
None => {
// ...
}
};
println!("{}", &string[start, end]);
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Rust, please visit: https://docs.rs/regex/latest/regex/