// 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"(?mx)(^\s*(?P<att_name>[^:\n]+):\s*?(?P<att_value>.+)?)$").unwrap();
let string = "Certificate:
Data:
Version: 1 (0x0)
Serial Number: 1 (0x1)
Signature Algorithm: sha256WithRSAEncryption
Issuer: O=NetApp Inc,, CN=Mediator CA
Validity
Not Before: Jan 14 15:28:02 2020 GMT
Not After : Jan 13 15:28:02 2021 GMT
Subject: O=NetApp Inc,, CN=Mediator Server
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
Public-Key: (2048 bit)
Modulus:
00:e3:dd:79:69:41:23:85:6b:d1:3f:74:0e:1d:c2:
13:d1:54:c9:17:cb:8f:d9:b3:87:1d:26:dd:09:ba:
eb:53:3d:17:cf:f6:c4:71:14:61:3c:55:85:a2:59:
78:c9:8f:0f:9e:b2:c9:73:06:13:5c:7b:55:35:18:
30:86:3c:f3:a1:69:8a:b6:fd:17:45:ab:0c:64:76:
";
let substitution = "---\\n\\3";
// 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/