// 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"(?m)(%Viptela)-([A-Za-z_0-9]*\-\d)-([A-Za-z_0-9]*)-(\d)-([A-Z]{4})-(\d*):").unwrap();
let string = "SYSMGR[318]: %Viptela-vmanage-1-sysmgrd-6-INFO-1400002: Notification: 5/14/2017 13:37:5 disk-usage severity-level: major host-name: \"vmanage-1\" system-ip:1.1.5.1 warning: \"Disk usage is above 75%. Please clean up unnecessary files.\" total-mb: total-mb: 15970 free-mb:6343
SYSMGR[318]: %Viptela-vmanage-1-sysmgrd-6-INFO-1400002: Notification: 5/14/2017 13:14:36 memory-usage severity-level :major host-name: \"vmanage-1\" system-ip:1.1.5. 1
warning: \"System memory usage is above 90% ( critically high)\" total-mb:3905 free-mb:390
VDAEMON_0[422]: %Viptela-vsmart-1-vdaemon_0-6-INFO-1400002: Notification: 1/1/2017 14:15:36 security-certificate- expired severity-level:major host-name:\" vsmart-1\" system-ip:1.1.3.1
VDAEMON_0[422]: %Viptela-vsmart-1-vdaemon_0-6-INFO-1400002: Notification: 1/1/2017 13:22:1 control-connection-auth-fail severity-level:major host-name: \"vsmart-1\" system-ip:1.1.3.1 personality:vsmart peer-type:vsmart peer- system-ip:1.1.4.1 local-system-p:1.1.3.1 local-color:default reason: \"ERR_CERT_VER_ FAIL
CHMGR[443]: %Viptela-vEdge44-1-chmgrd-6-INFO-1400002: Notification :
5/4/2017 12:56:1 tempsensor-state severity- level:major host-name: \"vEdge44-1\" system-ip:1 .1.44.1 hw-sensor-type:Board
hw-dev-index:0 name: \"Board\" temp:85 sensor-new -state:Yellow
FTM[597]: %Viptela-vEdge204-1-ftmd-6-INFO-1400002: Notification :
4/30/2017 5:37:4 interface-bw severity-level: major host-name: \"vEdge204-1\" system-ip:1.1. 204.1 vpn-id:0 if-name: \"ge0/1\"
if-cfg-bw-kbps:100000 traffic-direction: downstream duration:300
";
// result will be an iterator over tuples containing the start and end indices for each match in the string
let result = regex.captures_iter(string);
for mat in result {
println!("{:?}", mat);
}
}
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/