// 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"(?mu)([0-9]{1,2}:[0-9]{2}) (AM|PM)(\n)(.*)\n").unwrap();
let string = "5:47 PM
[EASY] Panzer Pebble joined the server
5:47 PM
Trigger executed raw command message \"76561199679367168\" Welcome to EASY Company | Level 50+! If you have any issues, please report it by typing !admin (reason) in chat. Come check us out at discord.gg/easycompany. You MUST be level 50 or higher to play on this server and level 75 or higher to play commander.
5:47 PM
Player [EASY] Panzer Pebble switched from None to Allies
5:47 PM
MESSAGE: player [[EASY] Panzer Pebble(76561199679367168)], content [We are trying to populate the server which means special rules apply.
5:56 PM
MESSAGE: player [[EASY] Panzer Pebble(76561199679367168)], content [Vote for the nextmap:
5:59 PM
MESSAGE: player [[EASY] Panzer Pebble(76561199679367168)], content [We are trying to populate the server which means special rules apply.
5:59 PM
MESSAGE: player [[EASY] Panzer Pebble(76561199679367168)], content [This server is under level thresholds control.
6:18 PM
Player [EASY] Panzer Pebble switched from None to Axis
7:28 PM
MESSAGE: player [[EASY] Panzer Pebble(76561199679367168)], content [Vote for the nextmap:
7:48 PM
MASTER CHIEF (Axis) killed [EASY] Panzer Pebble (Allies) with GEWEHR 43
7:49 PM
Yustitsiya (Axis) killed [EASY] Panzer Pebble (Allies) with MP40
9:00 PM
MESSAGE: player [[EASY] Panzer Pebble(76561199679367168)], content [Vote for the nextmap:";
let substitution = "\\g<1>\\g<2> \\g<4>\\n";
// result will be a String with the substituted value
let result = regex.replace_all(string, substitution);
println!("{}", result);
}
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/